关于java的正则表达式
我是学生 老师布置了一个题目 判断一个一个7位数字 即0-9间的一个数字 但是其中数字不能重复 通过输出true与false判断
主要是这样的正则表达式该怎么写?
谢谢大家
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我是学生 老师布置了一个题目 判断一个一个7位数字 即0-9间的一个数字 但是其中数字不能重复 通过输出true与false判断
主要是这样的正则表达式该怎么写?
谢谢大家
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
强行用正则的方法:
^(?!.*(.).*\1)\d{7}$
这里有两个技巧,一个是先行断言,一个是反向引用。
先行断言
(?!pattern)
禁止匹配pattern
,这里用于禁止匹配重复数字。反向引用
\1
这里引用了之前(.)
匹配的内容,.*(.).*\1
也就用于匹配重复出现的字符。合起来意思就是:没有重复字符,由七个数字构成的字符串。