RegularExpression

RegularExpression["regex"]

表示由字符串 "regex" 指定的广义正则表达式.

更多信息

  • 在函数诸如 StringMatchQStringReplaceStringCasesStringSplit 中,RegularExpression 可用来表示字符串的类型.
  • RegularExpression 支持用于普通的字符串操作语言中的标准的正则表达式的语法.
  • 下列的基本元素可以用于正则表达式:
  • c直接输出字符 c
    .除换行符外的任意字符
    [c1c2]任意字符 ci
    [c1-c2]c1c2 范围内的任意字符
    [^c1c2]ci 以外的任意字符
    p*p 重复0次或多次
    p+p 重复1次或多次
    p?p 出现0次或一次
    p{m,n}p 重复 mn
    p*?,p+?,p??匹配的最短字符串
    (p1p2)匹配次序 p1p2 的字符串
    p1|p2匹配 p1p2 的字符串
  • 下列表示字符的类型:
  • \\d数字 09
    \\D非数字
    \\s空格、换行符、制表符或其他间隔符号
    \\S非间隔字符
    \\w单词字符(字母、数字或 _)
    \\W非单词字符
    [[:class:]]一个类中的字符
    [^[:class:]]非该类中的字符
  • 可以使用下列已定义好的类:alnumalphaasciiblankcntrldigitgraphlowerprintpunctspaceupperwordxdigit.
  • 下列表示字符串中的坐标:
  • ^字符串(或行)的开头
    $字符串(或行)的结尾
    \\b单词边界
    \\B除单词边界的任意处
  • 在正则表达式后,可以设置下列选项:
  • (?i)忽略大小写
    (?m)行首和行尾匹配 ^$ (多行模式)
    (?s)允许 . 匹配新行
    (?-c)注销选项
  • \\.\\[ 等表示逐字输出字符 .[、等.
  • 类似已命名的 Wolfram 语言模式,例如 x:expr, 可以在正则表达式字符串中用 (regex) 来调用.
  • 在正则表达式的字符串中,\\gn 表示与括号内的正则表达式对象 (regex)n 项相匹配的子串. 较为简短的 \\n 往往等价于 \\gn.
  • 在例如 StringReplaceStringCases 的函数中,显示在正则表达式RegularExpression["regex"]->rhs 右方的任意 $n ,采取相对应的匹配括号内的正则表达式 (regex)n 项的子串. $0 表示完全匹配的字符串.

范例

打开所有单元关闭所有单元

基本范例  (2)

找到包含字符 a,b,c,d,e 的单词:

字符串模式的等价形式:

判断字符串是否由单词或间隔符组成:

字符串模式的等价形式:

范围  (21)

基本结构  (17)

提取除换行符外的任意字符:

"a" 和 "b" 中的任一字符:

"a" 和 "c" 之间的任意字符,包括 "a" 和 "c":

除"a" 和 "1" 外的任意字符:

重复1次或多次的任意数字:

重复 2 次或 3 次的字符 "a" :

任意数字:

非数字字符:

空格、换行符、制表符或其他间隔符:

非间隔符:

单词字符:

非单词字符:

找到所有大写字符:

在一个新行的开始,分割字符串:

在一个新行的末尾,分割字符串:

在单词的分界处插入一个字符:

除单词边界外,在每个字母处分割一个字符串:

复合结构  (4)

StringExpression 可以包含 RegularExpression 对象:

条件模式:

选择性的匹配一个或多个换行:

通过附加一个数量词问号"?",进行有限数量的匹配:

推广和延伸  (1)

$1 指严格按照字符 (.) 匹配:

可数的子模式:

属性和关系  (3)

StringMatchQ 决定字符串匹配模式:

StringCases 找到匹配的子串:

StringSplit 分割一个字符串成子串,用一个分隔符模式:

Wolfram Research (2004),RegularExpression,Wolfram 语言函数,https://reference.wolfram.com/language/ref/RegularExpression.html.

文本

Wolfram Research (2004),RegularExpression,Wolfram 语言函数,https://reference.wolfram.com/language/ref/RegularExpression.html.

CMS

Wolfram 语言. 2004. "RegularExpression." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/RegularExpression.html.

APA

Wolfram 语言. (2004). RegularExpression. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/RegularExpression.html 年

BibTeX

@misc{reference.wolfram_2024_regularexpression, author="Wolfram Research", title="{RegularExpression}", year="2004", howpublished="\url{https://reference.wolfram.com/language/ref/RegularExpression.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_regularexpression, organization={Wolfram Research}, title={RegularExpression}, year={2004}, url={https://reference.wolfram.com/language/ref/RegularExpression.html}, note=[Accessed: 17-November-2024 ]}