我想使用正则表达式来匹配所有完全大写的子字符串,包括空格。
现在我正在使用正则表达式:\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/