Tcl 进阶之路,编程题(1)—— Acronym

想要真正的学会一门编程语言,最重要的还是要动手开始写,有些时候是一看就懂,到自己写了,就不知道怎么办了,所以接下来会给到大家编程练习题,以及正确的 tcl 编写的答案,当然你也可以通过其它如 python 等语言来练习。


不管你现在在学什么编程语言,都可以跟着练习,欢迎大家分享自己编写的程序~~~

题目:

将一个短语转换为它的首字母缩略词。如下给出了程序的 输入输出 示例。 

InputOutput
As soon as possibleASAP
I'm fine, and you?IFAY
hello-world, hello-tcl.HWHT
_init_design this is also be ok!IDTIABO

参考答案一:

proc abbreviate {phrase} {
    set firstLetters [regexp -all -inline {[[:alpha:]][[:alpha:]']*} $phrase]
    set acronym ""
    foreach letter $firstLetters {
        append acronym [string index $letter 0]
    }
    return [string toupper $acronym]
}

参考答案二:

proc abbreviate {phrase} {
    set tokens [split $phrase " -_"]
    foreach token $tokens {
        lappend res [regexp -nocase -inline {[a-z]} $token]
    }
    return [string toupper [join $res ""]]
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值