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

2018-08-14 23:05:52 +08:00
 wxcszh

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

796 次点击
所在节点    问与答
6 条回复
ETiV
2018-08-14 23:12:03 +08:00
(\d{4})\1


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

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

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

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

@wxcszh
LGA1150
2018-08-14 23:43:49 +08:00
可以发到 /go/regex
wxcszh
2018-08-15 00:14:29 +08:00
@ETiV 非常感谢老哥指点。😉

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/479835

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX