这似乎是一个基本的东西,但我无法理解它.
字符串: The
为什么正则表达式[a-z]+匹配,he但正则表达式[a-z]*根本不匹配?我看到它的方式是因为量词*匹配零次或多次,它应该与+前一个例子中的匹配相同he.量词+是如何在大写"T"之后处理字符串但量词*不是?
编辑:关于正则表达式工具我只是使用在线资源:http: //regexr.com/和https://regex101.com/
很难告诉你问题,但我的猜测是:[a-z]*有多个匹配:之前是一个空字符串T,其余的,即he.你可能只看到第一场比赛.
有[a-z]+,第一(也是唯一)匹配he.
根据您使用的语言/工具,可能会有不同的功能,只获得第一场比赛,或获得所有比赛.这是Python中的一个例子:
>>> re.search("[a-z]*", "The").group()
''
>>> re.findall("[a-z]*", "The")
['', 'he', '']
Run Code Online (Sandbox Code Playgroud)