【发布时间】:2021-03-08 03:51:03
【问题描述】:
我想写一个正则表达式,它接受一个输入字符串,并返回一个包含所有单词的列表 首字母大写后跟任意数量的小写字母数字字符的字符串。
我使用了以下表达式[A-Z][a-z0-9_]+,但它似乎不起作用。
【问题讨论】:
-
您能否将不适合您的代码与包含应匹配单词的字符串共享?
标签: python python-3.x regex
我想写一个正则表达式,它接受一个输入字符串,并返回一个包含所有单词的列表 首字母大写后跟任意数量的小写字母数字字符的字符串。
我使用了以下表达式[A-Z][a-z0-9_]+,但它似乎不起作用。
【问题讨论】:
标签: python python-3.x regex
你有什么工作正常,还有其他问题
>>> import re
>>> re.findall(r"[A-Z][a-z0-9_]+", "Foo Bar baz")
['Foo', 'Bar']
如果您要排除中间有大写字母或类似的值,请考虑改为.split()ing 您的单词并查找以大写字母开头的单词
>>> [x for x in "Some long string of Words".split() if re.match("^[A-Z]", x)]
['Some', 'Words']
如果您想要一个完整的自然语言解析器,正则表达式是不够的,还需要投入更多的工作!
【讨论】: