2014-04-05 61 views
2

我目前正在編寫一個腳本來處理多個文件,並且我試圖從變量($pio)中讀取最後一個單詞。從變量中讀取最後一個單詞

該字符串的長度和字數是可變的,在函數的開頭設置爲$pio

我試圖讀取行/變量用「strip」分隔的最後一個單詞,但迄今爲止我只能通過字符數讀取。

是否可以讀取字符串的最後一個單詞並將其解析爲新變量?

回答

3

可以分割字符串,然後取最後一個索引:

set lastWord [lindex [split $pio] end] 

或者,如果你不介意使用一點點正則表達式,你可以使用這樣的事情:

regexp -- {\S+$} $pio lastWord 

\S+是至少匹配1個非空格字符的表達式,並且$確保此匹配發生在字符串的末尾。比賽將存儲一個名爲lastWord的變量。

codepad demo

+2

也許'split'或'regexp'之前,最好先爲'字符串trim'。 –

+0

沒有考慮到這一點,但的確如此。隨着用戶的輸入,我們永遠不能太確定! – Jerry

相關問題