V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
vking
V2EX  ›  PHP

关于正则表达式的问题.

  •  
  •   vking · 2013-07-30 17:08:44 +08:00 · 3024 次点击
    这是一个创建于 4116 天前的主题,其中的信息可能已经有所发展或是发生改变。
    $url='www.*.com/*/100.html*'
    有什么简单的办法把100提取并且赋给$id
    *里面肯定不会有.html
    100只是个例子,可能是其他数字
    6 条回复    1970-01-01 08:00:00 +08:00
    123123
        1
    123123  
       2013-07-30 17:46:00 +08:00
    preg_match('~(\d+).html~', $url, $match);

    去看看正则三十分钟
    123123
        2
    123123  
       2013-07-30 17:49:13 +08:00
    更正上面正则中的「.」应该是「\.」,虽然结果没什么差
    vking
        3
    vking  
    OP
       2013-07-30 17:50:26 +08:00
    @123123 谢谢.以前看过发现重新看又得花几个小时.
    BeijingBaby
        4
    BeijingBaby  
       2013-07-30 17:50:48 +08:00
    '|/(\d+)\.html|'
    turing
        5
    turing  
       2013-07-30 19:23:03 +08:00   ❤️ 1
    lz 搞不清正则不放用语义化的正则包装:https://github.com/jehna/VerbalExpressions
    lazygunner
        6
    lazygunner  
       2013-07-31 09:11:52 +08:00
    import re
    p = re.compile(r'^http://www\..*\.com/.*/(?P<num>\d*)\.html$')
    r = p.search('www.v2ex.com/t/123/html')
    r.group('num')
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3150 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:28 · PVG 20:28 · LAX 04:28 · JFK 07:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.