TCL中有关regexp匹配表达式的说明

原创 2018年04月15日 22:01:31
基本概念:
regexp 把匹配整个正规表达式的子字符串赋给第一个变量;然后在匹配整个正则表达式的子字符串中匹配正规表达式的最左边的子表达式的子字符串赋给第二个变量,依次类推。

语法:
regexp ?switches? exp string ?matchVar? ?subMatchVar subMatchVar ...?

说明:
1)以“-”开始的是一个匹配选项switch,比如-nocase,表示忽略字母大小写。
  双破折号,或称双连字符(double hyphens)“--”为swtich结束符号,表示其后为正则表达式exp string。可以认为双破折号没有实际的意义。
2)exp string是正则表达式描述符。
3)matchVar:匹配整个正则表达式的字符赋给该变量。
4)subMatchVar: 第一个子表达式匹配值赋值給第一个子变量;以此类推

例如:
% regexp { ([0-9]+) *([a-z]+)} "there is 100 apples" total num word
1

% puts " $total ,$num,$word"

100 apples ,100,apples

--------------
以上结果说明整个表达式匹配了“100 apples"; 在“100 apples”中,子表达式([0-9]+) 匹配了100;子表达式([a-z]+)匹配了apples。

详细参见:http://www.tcl.tk/man/tcl8.6/TclCmd/regexp.htm

tcl的正则表达式命令regexp的参数-lineanchor的理解

tcl中正则表达式用得很多,往往一句代码能够做好几条其他语句才能做完的工作,高效快捷; 在处理string中逐行匹配的情况下往往是用参数-line,但其实-line相当于-lineanchor和-l...
  • boy198332
  • boy198332
  • 2013年11月20日 18:52
  • 1439

tcl 正则表达式命令regexp 参数-inline的理解

tcl “似乎”在8.4以后的版本对正则表达式命令regexp 提供了一个新的参数 -inline: -inline Causes the command to return, as a list,...
  • boy198332
  • boy198332
  • 2013年11月27日 21:18
  • 2397

TCL中的正则表达式

TCL中的正则表达式主要是两条命令:(1)      regexp?switches?exp string?matchVar? ?subMatchVar subMatchVar ...?在字符串中使用...
  • emilyzhang98
  • emilyzhang98
  • 2009年12月23日 15:43
  • 12499

tcl/tk参考——字符串操作regexp

.. 名称regexp - 为一个字符串进行正则表达式匹配 语法regexp ?switches? exp string ?matchVar? ?subMatchVar subMatchVar ......
  • dulixin
  • dulixin
  • 2008年04月20日 14:04
  • 20090

TCl-正则表达式参考

      今天想用正则表达式来获取收到的http报文中的content-length字段的值的时候,无意中发现一篇用tcl语言写的文章,觉得很不错。所以转载。一、     介绍追根溯源,正则表达...
  • Augusdi
  • Augusdi
  • 2015年10月10日 13:32
  • 5720

linux tcl语法的正则表达式,实现匹配或者替换操作

regexp regsubIC EDA工具默认支持的内置脚本,一般都是tcl语言。 常用的正则表达式,也就regexp和regsub两个,分别代表匹配字符串和替换字符串的功能。regexpregex...
  • u011729865
  • u011729865
  • 2017年05月13日 13:42
  • 1445

使用TCL的正则表达式批量修改多个文件中的单词

现在只是个示范程序,后面会修改。因为公司不能访问外网,所以只是在这里写个简单的例子。原意是需要批量修改自动化脚本。 # 在这里读取文件内容,将内容保存在Script变量中。 set Script {...
  • STK_tianwen
  • STK_tianwen
  • 2010年10月02日 17:54
  • 2041

Tcl学习之--表达式

数值操作数 表达式的操作数通常是整数或实数。整数可能是十进制,二进制,八进制或十六进制。比如下面同一个整数 335 --> 十进制 0o517 --> ...
  • Jerry_1126
  • Jerry_1126
  • 2015年07月11日 19:39
  • 1362

tcl中正则表达式

一、     介绍 追根溯源,正则表达式是在1956年的时候,人类最早研究神经网络的产物,但随着时间的流逝,几乎所有编程语言都加入了对它的支持,hoho~其实这个东西也是程序员开发中比较有名的一个难...
  • shun01
  • shun01
  • 2014年04月16日 15:54
  • 1117

TCL双引号 花括号 中括号

TCL的执行分为两步,第一步替换,第二步执行。。 在方括号[]中的内容将在替换步骤中计算出结果,整体替换为结果 在双引号和花括号中的内容将视为一个参数 在双引号中的内容在替换步骤中,执行替换。。例如,...
  • donggua_fu
  • donggua_fu
  • 2016年10月19日 15:51
  • 1970
收藏助手
不良信息举报
您举报文章:TCL中有关regexp匹配表达式的说明
举报原因:
原因补充:

(最多只允许输入30个字)