Provided by: manpages-zh_1.6.3.3-2_all bug

NAME

       regsub - 基于正则表达式模式匹配进行替换

总览 SYNOPSIS

       regsub ?switches? exp string subSpec varName
_________________________________________________________________

描述 DESCRIPTION

       这个命令针对  string 匹配正则表达式 exp,并且它把 string 复制到用 varName 给出名字的变量中。(正则表达式匹
       配的描述请参见 re_syntax 参考页。)如果有一个匹配,则在复制 stringvarName 期间,string 中匹配 exp 的那
       部分将被替代为 subSpec。如果 subSpec 包含一个``&''或``\0'',则在这个替换中它被替代为 string 中匹配 exp 的
       那部分。如果 subSpec 包含一个``\n'',这里的 n  是在  1  和  9  之间的一个数字,则在这个替换中它将被替代为
       string   中匹配第   n   个圆括号中的子表达式   exp   的那部分。   在  subSpec  中可以使用额外的反斜杠来防
       对``&''、``\0''、``\n''或反斜杠的特殊解释。在 subSpec 中使用的反斜杠可能与  Tcl  分析器使用的反斜杠有所冲
       突。所以,如果 subSpec 中包含反斜杠,最安全的方式通常是把 subSpec 包围在花括号中。

       如果给 regexp 的初始的参数以 - 为开始,则它们被作为开关来对待。当前支持下列开关:

       -all      找到  string 中匹配 exp  的所有范围,并对每个范围进行替换。没有这个选项,则只有第一个匹配的范围
                 被找到并替换。如果指定了 -all,则对于每次替换使用相应的匹配信息来处理``&''和``\n''序列。

       -expanded      启用展开的(expanded)正则表示式语法,将忽略白空格和注释。这与指定 (?x) 嵌入选项相同。  (see
                      METASYNTAX, below).

       -line          启用换行敏感匹配。缺省的,换行是没有特殊意义的一个完全的普通字符。加上了这个标志,‘[^’  方
                      括号表达式和‘.’将永不匹配换行,‘^’除了它的正常功能之外还匹配在任何换行之后的空串,而‘$’除
                      了它的正常功能之外还匹配在任何换行之前的空串。这个标志等价于指定  -linestop-lineanchor
                      二者,或者 (?n)  嵌入选项。 (see METASYNTAX, below).

       -linestop      改变‘[^’方括号表达式和‘.’的行为,这样表示式将停止于换行。这与指定       (?p)    嵌入选项相
                      同。(see METASYNTAX, below).

       -lineanchor    改变‘^’和‘$’(“锚”)的行为,这样它们分别的匹配一行的开始和结束。这与指定 (?w) 嵌入选项相同。
                      (see METASYNTAX, below).

       -nocase   Upper-case characters in string will be converted to lower-case before  matching  against  exp;
                 however, substitutions specified by subSpec use the original unconverted form of string.        │

       -start index                                                                                              │
                 在字符串中指定一个字符索引,在这个偏移量上开始匹配。当使用了这个开关的时候,‘^’将不匹配行的开   │
                 始,而     \A  将仍旧在 index 上匹配字符串的开始。index 将被约束为输入字符串的束缚。

       --        标记开关的结束。这个标志之后的参数即使以 - 为开始仍被作为 exp 对待。

       这个命令返回找到并替换的匹配范围的总数。正则表达式的解释详见 regexp 的手册条目。

参见 SEE ALSO

       regexp(n), re_syntax(n)

关键字 KEYWORDS

       match, pattern, regular expression, substitute

[中文版维护人]

       寒蝉退士

[中文版最新更新]

       2001/10/27

《中国 Linux 论坛 man 手册页翻译计划》:

       http://cmpp.linuxforum.net

       本页面中文版由中文 man 手册页计划提供。
       中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh