【问题标题】:Regular expression for fractional street address小数街道地址的正则表达式
【发布时间】:2013-08-10 17:13:10
【问题描述】:

我正在尝试编写一个正则表达式来匹配街道地址的小数部分(例如 123 1/2 Broadway)。这就是我所拥有的:

(?<=\d+ )\d/\d

所以基本上匹配任意数量的数字和空格之后的任何字符串x/x。出于某种原因,我没有得到任何匹配。如果我删除加号,这可以正常工作:

(?<=\d )\d/\d

...但我仍然不明白为什么第一个不起作用。谢谢!

【问题讨论】:

  • 您使用的是哪个正则表达式引擎?其中一些不支持可变长度的后视。
  • 是的,请更明确地说明上下文。 RegEx 引擎,编程语言/命令行实用程序。第一种情况下的代码段,第二种情况下的确切命令和选项,等等。
  • 很抱歉 - 这将在 JavaScript 中,但目前我只是使用 Sublime Text 中的搜索功能来测试它。
  • JavaScript 根本不支持lookbehind。
  • 太棒了。很高兴知道:)

标签: regex


【解决方案1】:

根据您的正则表达式引擎,您的后视字符必须具有固定宽度。由于\d+ 不是固定宽度(+ 表示可以是 1、2、3 等次),所以它不起作用。

至于为什么,我觉得this answer回答得很好:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多