使用Sublime Text 3我想从文本中仅提取大写单词和表达式。
实施例: 你好,世界!对所有人来说,这是一个阳光灿烂的日子。
如果我使用查找工具,我可以使用此正则表达式单独提取所有大写单词:
\b[A-Z]+\b
结果是SUNNY和DAY,但我想将SUNNY DAY作为一个整体来提取通过查找工具,而不会留下简单的单词,如:
It's SUNNY today.
答案 0 :(得分:1)
您只需使用
即可\b[A-Z]+(?:\s+[A-Z]+)*\b
请参阅regex demo
我将(?:\s+[A-Z]+)*
添加到正则表达式以匹配0或更多序列:
\s+
- 一个或多个空格[A-Z]+
- A-Z
范围内的一个或多个字符。请注意,如果您需要匹配Unicode大写字母,请使用\p{Lu}
代替[A-Z]
(它也会匹配重音字母):
\b\p{Lu}+(?:\s+\p{Lu}+)*\b