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

再请教一个关于正则表达式的问题

  •  
  •   wxcszh · 2018-08-14 23:05:52 +08:00 · 849 次点击
    这是一个创建于 2299 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有很多组 8 个数字,从 0-9 中随机,如何仅使用正则表达式匹配出前 4 位后 4 位 相同的数字。
    比如符合条件的:4 位不相同的 12341234,4 位中有相同的 12331233,12221222,11111111
    请问这个可以仅仅使用正则表达式匹配出来吗?应该怎么写呢?谢谢各位大神啦🙏

    ETiV
        1
    ETiV  
       2018-08-14 23:12:03 +08:00   ❤️ 3
    (\d{4})\1


    ericls
        2
    ericls  
       2018-08-14 23:15:49 +08:00 via iPhone
    @ETiV nice!
    wxcszh
        3
    wxcszh  
    OP
       2018-08-14 23:30:52 +08:00 via iPhone
    @ETiV 老哥,你用的这个是什么😂解释的好详细,可以从哪里获取么?

    我还想请教一下,匹配前 4 位中的前 3 位 和后 4 位中的前 3 位 相同的情况,当然这种情况包括上面前 4 位和后 4 位相同的情况了
    如 12341235 12331234

    请老哥赐教😃
    ETiV
        4
    ETiV  
       2018-08-14 23:42:46 +08:00   ❤️ 1
    https://regex101.com/

    也是 8 位么,就先匹配 3 位、加一个独立的数字,再匹配第一个找到的 3 位(所以第一个 3 位需要加括号),再一个独立的数字:
    (\d{3})\d\1\d

    @wxcszh
    LGA1150
        5
    LGA1150  
       2018-08-14 23:43:49 +08:00 via Android
    可以发到 /go/regex
    wxcszh
        6
    wxcszh  
    OP
       2018-08-15 00:14:29 +08:00 via iPhone
    @ETiV 非常感谢老哥指点。😉
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2727 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:33 · PVG 20:33 · LAX 04:33 · JFK 07:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.