python - 使用正则表达式查找所有完全大写的短语

标签 python regex parsing

我想使用正则表达式来匹配所有完全大写的子字符串,包括空格。

现在我正在使用正则表达式:\w*[A-Z]\s]

这是测试我们在说什么

返回结果:

HERE
IS
WHAT
ARE 
WE
SAYING

但是,我希望它与所有大写的子字符串匹配,以便它返回:

HERE IS 
WHAT ARE WE SAYING 

最佳答案

您可以使用字边界 \b[^\s] 来防止开头和结尾出现空格。放在一起可能看起来有点像:

import re
string = "HERE IS Test WHAT ARE WE SAYING is that OKAY"

matches = re.compile(r"\b[^\s][A-Z\s]+[^\s]\b")
matches.findall(string)

>>> ['HERE IS', 'WHAT ARE WE SAYING', 'OKAY']

关于python - 使用正则表达式查找所有完全大写的短语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53511012/

相关文章:

python - 是否有一个简单的 Python 字符串解析器?

string - 如何解析 Netlogo 中的字符串?

javascript - 获取字符串Jquery中标签中包含的字符串

c - 使用 C 将文本文件中的内容扫描到 2 个数组中

python - numpy 数组中的最小函数

python - 在 2.7.6 上安装 Python 2.7.9

Python re.split 和 re.findall : grouping and capturing

ios - 使用单个 RegEx 匹配字符串的变体

java:在流中搜索和替换

在 vim 中替换时出现正则表达式嵌套引号问题