A-A+

TCL中字符串的替换

2019年08月19日 脚本 阅读 4,434 views 次

在TCL中可以使用 stringreplace命令进行字符串替换。它接受一个字符串作为参数,以及要删除的字符序列的开头和结尾索引,还可选地接受一个字符串参数作为替换用字符串。例如:

string replace "San Diego,California" 4 8 "Francisco"

san Francisco,California

string replace "parsley, sage,rosemary, and thyme" 0 8

sage, rosemary, and thyme

string map命令根据字典把字符串中的相应文本替换为对应的值。这可以用于模板功能。其基本语法如下

string map dictionary string

string map命令将string中出现的所有dictionary关键字置换为相应的值,返回置换后的字符串。置换是按顺序进行的,列表中先出现的关键字先处理。只对字符串迭代一次,所以前面进行的置换不会影响接下来的匹配查找,例如:

set entities {

& &

' '

> >

< &lt;

\" &quot;

}

string map $entities {if (index>0 &&nbAtts==0)}

if (index &gt; 0 &amp;&amp; nbAtts==0)

使用-nocase选项,就不区分关键字的大小写,例如:

string map –nocase \

{RESOURCE "Ms. Ripley"CORPORATION "Weyland-Yutani"} \

"Dear ResouRcE, welcome to your firstday at corporation"

Dear Ms. Ripley, welcome to your first dayat Weyland-Yutani

在TCL中通过正则表达式还可以进行更复杂的替换操作。

个人公众号“数字化设计CAX联盟”,欢迎关注,共同交流
标签:
为您推荐:

给我留言

© 坐倚北风 版权所有 严禁镜像复制 苏ICP备15034888号. 基于 Ality 主题定制 AliCMS
联系邮箱:leanwind@163.con,微信公众号:数字化设计CAX联盟

用户登录

分享到: