我这里有一个文本文件需要分析,我感兴趣的只是整个单词的首字母大写,
例如:测试字符串:Everyday HOLDS the poSSibility Of A Miracle
我要捕获:Everyday Of A Miracle
我目前正在尝试使用Python构建正则表达式,奇怪的是,我的正则表达式只能捕获首字母大写的整个单词。
测试字符串:Everyday HOLDS the poSSibility Of A Miracle
我的正则表达式:^([A-Z])?([a-z])+
捕获:Everyday
我在这里想念什么?
最佳答案
与其将正则表达式锚定在字符串的开头,不如使用边界检查:
import re
s = 'Everyday HOLDS the poSSibility Of A Miracle'
new_s = ' '.join(re.findall(r'\b[A-Z][a-z]+|\b[A-Z]\b', s))
输出:
'Everyday Of A Miracle'
关于python - 仅提取首字母大写的整个单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50203857/