【发布时间】:2009-07-09 23:34:48
【问题描述】:
我想使用正则表达式提取文本的一部分。例如,我有一个地址,想只返回数字和街道并排除其余的:
2222 Main at King Edward Vancouver BC CA
但大多数时候地址的格式会有所不同。我尝试使用 Lookbehind Regex 并得出了这个表达式:
.*?(?=\w* \w* \w{2}$)
上面的表达式很好地处理了上面的例子,但是一旦逗号进入文本,邮政编码可以是 6 个字符串或两个 3 个字符的字符串,中间有一个空格等,它就变得太混乱了。 ..
除了lookbehind regex之外,还有什么更优雅的方式来提取部分文本?
非常感谢任何建议或其他方向的观点。
谢谢!
【问题讨论】:
-
仅供参考,您使用的是前瞻,而不是后瞻。
标签: regex extract lookbehind