在英文文本中,各个英文单词被分隔符所分开。这些分隔符包括英文标点符号、空白字符等。其中,英文标点符号比较多,如,(逗号)、.(点号)、?(问号)、:(冒号)、;(分号)、'(单引号)、!(感叹号)、"(双引号)、-(连接号)、--(破折号)、…(省略号)、()(小括号)、[](中括号)、{}(大括号)、`(所有格符号)等。
在英文文本中,有时需要验证两个英文单词是否被标点符号分开,或者是否被指定的分隔符分开。以下正则表达式能够验证英文单词。
[a-zA-Z]+ (26)
以下正则表达式能够验证英文单词之间的分割符号。
[-,.?:;'"!`]|(-{2})|(/.{3})|(/(/))|(/[/])|({}) (27)
正则表达式(27)解释:
[-,.?:;'"!']匹配字符-、,、.、?、:、'、"、!、`;-{2}匹配破折号--。
/.{3}匹配省略号…。
/(/)匹配小括号()。
/[/]匹配中括号。
{}匹配大括号。
使用工具Regex Tester测试正则表达式(27),结果如图所示。
以下正则表达式能够验证英文单词之间的分割符号,且分隔符的两边都是英文单词。
[a-zA-Z]+([-,.?:;'"!`]|(-{2})|(/.{3}))/s*[a-zA-Z]+ (28)
正则表达式(28)解释:
[a-zA-Z]+匹配英文单词。
[-,.?:;'"!']可以匹配-、,、.、?、:、'、"、!、`。-{2}匹配破折号--。
/.{3}匹配省略号…。
/s*可以匹配0个或多个空白字符。
使用工具Regex Tester测试正则表达式(28),结果如图所示。