winniexia 发表于 2011-7-5 07:17:04

Tcl 新手请教这个程序的意思,怎么也看不懂,谢谢了!

set SAI_RX_BCLK_PINS pta ptc ptc]
foreach pin ${SAI_RX_BCLK_PINS} {
regexp {(.*)\[(.*)\]} $pin junk name num
set npin $name$num

if { && $cts_spec_stage1 } {
   set sai_rx_bclk .name]
   lappend cts_spec(${sai_rx_bclk},LeafPin) "clkgen_sai_clk_mux/d0 rising"


就是regexp {(.*)\[(.*)\]} $pin junk name num部分怎么也看不懂。其它部分清楚是什么意思。所以请教达人帮忙解释一下,跪谢!
          set npin $name$num

默默巫 发表于 2011-7-6 11:08:16

提问帖不要选择付费主题哦,可以下次选择发帖-悬赏。

msnshow 发表于 2011-7-6 14:00:17

看不明白, regexp应该是正则表达式

harrywood 发表于 2011-7-6 21:35:56

这么复杂!我才看TCL3天,看不懂。

冰之世界 发表于 2011-7-7 10:59:03

regexp {(.*)\[(.*)\]} $pin junk name num
正则表达式,{}表示待匹配的样式,()表示分组,$pin是用于作匹配的字符串,junk是表示匹配与否的布尔值,如果匹配前后两个圆括号里面的内容分别赋值给name和num
set npin $name$num
把name和num的值串联在一起赋给npin
页: [1]
查看完整版本: Tcl 新手请教这个程序的意思,怎么也看不懂,谢谢了!