Tcl命令之字符串操作

取字符

string indexstring range 命令都是用于从一个字符串中取字符操作,只是参数不同而已,下面介绍这两个命令的具体用法。

string index

用法:

string index "string" charIndex

string” 是一个字符串,charIndex 是被取字符的索引值,如果索引值大于字符串的长度,则返回空字符。
e.g.

string index "abcdef ee ab" 3
string index "abcdef ee ab" 6
string index "abcdef ee ab" 13

返回结果如下图所示,
在这里插入图片描述

string range

用法:

string range "string" charIndex1 charIndex2

string range 命令有两个索引值,该命令返回的是一个字符串中索引值1到索引值2之间的所有字符。
e.g.

string range "abcdef ee ab" 0 5
string range "abcdef ee ab" 1 7

返回结果如下图所示,
在这里插入图片描述

字符串运算

字符串的运算操作命令包括长度计算、大小写转换、裁剪、重复、比较、置换等,下面简单介绍这几个命令。

测量长度

string length "string"

该命令返回字符串 “string” 的长度。

大小写转换

string toupper "string"
string tolower "string"

string toupper 命令是将字符串 “string” 中的所有小写字母转换成大写字母;
string tolower 命令是将字符串 “string” 中的所有大写字母转换成小写字母。
e.g.

string toupper "ABCedfg"
string tolower "ABCdefg"

执行结果如下图所示,
在这里插入图片描述

裁剪

裁剪命令应用最多的场景就是移除一个字符串中过多的空白符或者其他字符。

string trim

用法:

string trim "string" chars

该命令将字符串 “string” 中开头和结尾出现的所有 chars 字符删除,返回新的字符串,chars 的默认值为空白符。
e.g.

string trim "abcdersasdacb" abcds
string trim "abcdersasdacb" abcd
string trim "    abcdersasdacb   "

命令执行结果如下图所示,
在这里插入图片描述

string trimleft 和 string trimright

这两个命令的用法和string trim命令的用法相同,裁剪的位置不同,trimleft 是只在开头裁剪,而 trimright 只在结尾裁剪。
e.g.

string trimleft "abcdersasdacb" abcds
string trimright "abcdersasdacb" abcd
string trimright "    abcdersasdacb   "

命令执行结果如下图所示,
在这里插入图片描述

重复

string repeat 命令用于将一个字符串重复指定次数,返回重复之后的字符串。
用法:

string repeat "string" count

count 的值也就是字符串“string”重复的次数。

字符串比较

string compare 和 string equal 两个命令都是用于字符串比较,compare 命令属于非严格比较,而equal命令属于严格比较。
用法:

string compare "string1" "string2"
string equal "string1" "string2"

使用compare命令时,如果string1和string2完全相同,则返回0,若string1在字典中先于string2,则返回-1,若string1在字典中后于string2,则返回1。
使用equal命令时,如果string1和string2完全相同,则返回1,否则返回0。
字符串的比较区分大小写,也可以指定-nocase选项,可不区分大小写。
e.g.

string compare "ABCDS" "ABCDF"
string compare "ABCDS" "ABCDS"
string compare "ABCDF" "ABCDS"
string equal "ABCDF" "ABCDS"
string equal "ABCDF" "ABCDf"
string equal "ABCDF" "ABCDF"
string equal -nocase "ABCDF" "ABCDf"

返回结果如下图所示,
在这里插入图片描述

字符串置换

使用string replace命令进行简单的字符串置换,使用string map命令根据字典吧字符串中相应文本置换为值。

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值