正则表达式

下表列出了可用于创建自定义语言词典的正则表达式。

项目名称 常规的正则表达式符号 使用示例及说明
任意字符 中的结果页面之间切换。 c.t - 表示“cat”、“cot”等
组中字符 []

[b-d]ell - 表示 “bell”、“cell”、“dell”等

[ty]ell - 表示“tell”和“yell”

组外字符 [^]

[^y]ell - 表示“dell”、“cell”、“tell”,但禁止表示“yell”

[^n-s]ell - 表示“bell”、“cell”,但禁止表示“nell”、“oell”、“pell”、“qell”、“rell”和“sell”

| c(a|u)t - 表示“cat”和“cut”
0 或更多匹配 * 10* - 表示数字 1、10、100、1000 等
1 或更多匹配 + 10+ - 可表示数字 10、100、1000 等,但禁止表示 1
字母或数字 [0-9a-zA-Zа-яА-Я]

[0-9a-zA-Zа-яА-Я] — 可表示任何单个字符

[0-9a-zA-Zа-яА-Я]+ — 可表示任何单词

大写拉丁字母 [A-Z]
小写拉丁字母 [a-z]
大写西里尔字母 [А-Я]
小写西里尔字母 [а-я]
数字 [0-9]
@ 保留。

注:

  1. 要将正则表达式符号作为正常字符使用,请在符号前添加反斜线。例如,[t-v]x+ 代表 tx、txx、txx 等和 ux、uxx 等,而 \[t-v\]x+ 则代表 [t-v]x、[t-v]xx、[t-v]xxx 等。
  2. 要分组正则表达式元素,请使用括号。例如,(a|b)+|c 代表 c 或任何类似 abbbaaabbb、ababab 的组合(任何长度非零、其中可能有按任意顺序排列的任意个数的 a 和 b 的单词),而 a|b+|c 则代表 a、c 和 b、bb、bbb 等。

示例

假设您在识别一个包含三列的表格:出生日期、姓名、电子邮件地址。在这种情况下,您可以创建两种新语言、数据和地址,并为它们指定以下正则表达式。

日期的正则表达式:

表示日的数字可由一位数字(1、2 等)或两位数字(02、12)组成,但不能为零(00 或 0)。日的正则表达式应显示为:((|0)[1-9])|([1|2][0-9])|(30)|(31)。

月的正则表达式应显示为:((|0)[1-9])|(10)|(11)|(12)。

年的正则表达式应显示为:([19][0-9][0-9]|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9])。

现在,我们需要将所有这些组合起来并用句点隔开数字(如 1.03.1999)。句点也是正则表达式符号,所以必须在前面添加反斜线 (\)。

因此,完整日期的正则表达式应显示为:

((|0)[1-9])|([1|2][0-9])|(30)|(31)\.((|0)[1-9])|(10)|(11)|(12)\.((19)[0-9][0-9])|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9])

电子邮件地址的正则表达式:

[a-zA-Z0-9_\-\.]+\@[a-z0-9\.\-]+

02.11.2018 16:20:10

Please leave your feedback about this article

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.