我正在寻找一个正则表达式,该表达式可用于查找以不同数字开头和结尾的数字。
我尝试了以下操作:^(\d)\d*(?!\1)$
但是,这不起作用,它为
这样的数字提供了正匹配项
我在哪里弄错了?有什么想法吗?
答案 0 :(得分:3)
您可以在捕获组之后使用正向前行(?!\d*\1$)
来断言其后的结果不是零或更多倍于以组1结尾的数字。
答案 1 :(得分:2)
您的正则表达式实际上与最后一位数字不匹配。您应该这样做:
^(\d)\d*(?!\1)\d$
^^
match the last digit!
您的正则表达式只是断言末尾没有起始数字。嗯,一个空字符串也“不是起始数字”,因此它与1221
之类的东西匹配。您必须告诉它匹配“不是起始数字的数字”。