2015-12-03 88 views
2

用崇高的文本3我想從文本中提取僅大寫的詞語。正則表達式匹配大寫的表情和說話

例子: 世界,你好!這對所有人來說都是一個陽光明媚的日子。

如果我使用查找工具,我可以單獨使用此正則表達式提取全部大寫單詞:

\b[A-Z]+\b 

的結果是陽光明媚的一天,但我想考慮陽光燦爛的日子作爲一個整體來提取低谷查找工具,不會留下簡單的字像:

It's SUNNY today. 

回答

1

您可以簡單地使用

\b[A-Z]+(?:\s+[A-Z]+)*\b 

參見regex demo

我添加(?:\s+[A-Z]+)*到正則表達式匹配的0個或更多序列:

  • \s+ - 從A-Z範圍爲1個或多個字符 - 1或多個空格
  • [A-Z]+

enter image description here

注意,如果你需要匹配的Unicode大寫字母,使用\p{Lu}而不是[A-Z](它也將匹配重音符號):

\b\p{Lu}+(?:\s+\p{Lu}+)*\b 
+0

Regexper [illustation(HTTP: //regexper.com/#\b[AZ]%2B%28%3F%3A\s%2B[AZ]%2B%29*\b) – ceving

+1

非常感謝你,它似乎正常工作! – alebordovsky