在Tcl中,可利用stringcompare命令對字符串進(jìn)行比較。該命令需要接收兩個字符串參數(shù)。如果第一個字符串在字典中先于第二個字符串,返回-1;如果第一個字符串在字典中后于第二個字符串,返回1,如果兩者相同,返回0,如下圖所示。
string equal則是對兩個字符串進(jìn)行簡單的比較,如兩者嚴(yán)格相同,則返回1,否則返回0(與stringcompare的返回值是不同的),如下圖所示。
string compare和stringequal都是區(qū)分大小寫的,但如果添加選項(xiàng)-nocase,則不再區(qū)分大小寫,如下圖所示。
還可以通過-length選項(xiàng)指定對字符串的前l(fā)ength個字符進(jìn)行比較操作,如下圖所示。這里可以看到-length的在命令中的正確位置。
盡管字符串比較支持直接使用數(shù)學(xué)表達(dá)式(> 、<和==),但從代碼風(fēng)格和執(zhí)行效率的角度而言,string compare和string equal更為高效。如下圖所示,通過timing命令可獲取Tcl命令的執(zhí)行時間,對比下來,string equal命令耗時最短。
結(jié)論:
-借助string compare命令可對字符串進(jìn)行比較
-借助string equal命令可判斷兩個字符串是否嚴(yán)格相等
-string compare和stringequal都支持-nocase和-length選項(xiàng)
-盡管字符串比較支持直接使用數(shù)學(xué)符合,但使用上述兩個命令更為高效
-
TCL
+關(guān)注
關(guān)注
10文章
1722瀏覽量
88566 -
字符串
+關(guān)注
關(guān)注
1文章
578瀏覽量
20506 -
命令
+關(guān)注
關(guān)注
5文章
683瀏覽量
22011
原文標(biāo)題:Tcl的字符串操作:比較字符串
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論