V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
supman
V2EX  ›  问与答

求助一个 正则表达式, 提取数字.

  •  
  •   supman · 2014-12-05 02:37:42 +08:00 · 1941 次点击
    这是一个创建于 3667 天前的主题,其中的信息可能已经有所发展或是发生改变。
    <p class="ID">ID: 5376</p>

    \d+[\<] 这个是我目前想到的, 但问题是这样的话, 就把右边的 < 符号 也匹配进去了...

    大家有什么高招呢? 这个不是完整的代码, 如果只使用 \d+ 的话 会提取一堆不相干的数字..
    5 条回复    2014-12-05 09:12:52 +08:00
    yangqi
        1
    yangqi  
       2014-12-05 03:03:15 +08:00
    \d+加括号啊

    (\d+)[\<]
    ChiangDi
        2
    ChiangDi  
       2014-12-05 03:03:52 +08:00 via Android
    你在提取网页里面的信息吗?直接用 xpath 会方便很多的。
    supman
        3
    supman  
    OP
       2014-12-05 03:05:01 +08:00
    @yangqi
    @ChiangDi

    我去..真的..加了括号就好了.......谢谢你啦 :)
    Sunyanzi
        4
    Sunyanzi  
       2014-12-05 09:05:36 +08:00
    顶楼的思路其实是前瞻断言吧 ... 写成 \d+(?=<) 就不会把 < 匹配进去了 ...

    不过说来以顶楼的原文来看 ... 直接用 \d+ 匹配不好吗 ...
    mhycy
        5
    mhycy  
       2014-12-05 09:12:52 +08:00
    这种我一直写成
    <p\s+class="ID">ID:\s+([0-9]+)</p>
    直观易懂....
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2703 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:16 · PVG 23:16 · LAX 07:16 · JFK 10:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.