我正在使用以下正则表达式匹配并捕获字符串weather in foo bar:
weather in ([a-z]+|[0-9]{5})\s?([a-zA-Z]+)?
Run Code Online (Sandbox Code Playgroud)
哪个匹配和捕获bar可选,并且foo可以成为城市或拉链.
但是,我很乐意让用户写weather in foo for bar,因为我自己不小心写了几次.有没有办法可选地捕获文字字符串,for而不必诉诸\s?f?o?r?\s??