如何修剪字符串右边的两个单词

时间:2014-08-27 08:19:27

标签: tcl

我想从字符串右侧删除两个单词。

例如:

set str "sachin is the pride of india"

我需要从右侧删除indiaof,之后应该没有空格。

我尝试过使用string trimright

1 个答案:

答案 0 :(得分:2)

string trimright命令对此完全是错误的工具;它将其trim参数视为要移除的字符集,而不是文字。最简单的方法是使用lreplace,前提是字符串不包含列表元字符,并且您不关心空格的数量。

set shortened [lreplace $str end-1 end]

如果您需要可靠正则表达式是首选工具

set shortened [regsub {\s*\S+\s+\S+\s*$} $str ""]

使用regsub。请。