我想从字符串右侧删除两个单词。
例如:
set str "sachin is the pride of india"
我需要从右侧删除india
和of
,之后应该没有空格。
我尝试过使用string trimright
。
答案 0 :(得分:2)
string trimright
命令对此完全是错误的工具;它将其trim参数视为要移除的字符集,而不是文字。最简单的方法是使用lreplace
,,前提是字符串不包含列表元字符,并且您不关心空格的数量。
set shortened [lreplace $str end-1 end]
如果您需要可靠,正则表达式是首选工具。
set shortened [regsub {\s*\S+\s+\S+\s*$} $str ""]
使用regsub
。请。