使用具有-(hypen)的正则表达式验证字符串
要求是:字符串只包含数字和-(连字符),不以-(连字符)结尾,所有其他数字不相同。
^([0-9-])(?!\1+$)[0-9-]{5}$
上面的一个只允许数字和连字符,但不限制以连字符结尾,并检查所有其他数字是否相同。
前任:
1111-1 Not allowed because all are same digits
1111-2 Allowed
11112- Not allowed as its end with - Hypen
-12345 Not allowed as its start with - hypen
我的2美分允许[01]
连字符:
^(?=.{6}$)(\d)(?=.*(?!\1)\d)\d+(?:-\d+)?$
查看在线演示
您可以将模式写成
^(\d)(?!(?:\1|-)+$)(?!\d*-\d*-)[\d-]{4}\d$
解释
^字符串的开头
(\d)
在组1中捕获一个数字
(?!
消极前瞻
(?:\1 |-)$
检查右侧不仅有第1组值或连字符
正则表达式演示
如果至少应有1个连字符:
^(\d)(?!(?:\1|-)+$)(?=\d*-)[\d-]{4}\d$
正则表达式演示
我正在尝试编写一个正则表达式,允许数字和字符之间使用连字符(-),但删除字符之间的连字符,并用PHP字符串中的空格替换它。我是正则表达式的初学者,不知道如何编写正则表达式,有人能帮我吗 这里我需要的是一个类似于PHP的字符串 在应用正则表达式后,我需要的输出必须是这样的 还有其他方法吗?请帮忙
我正在尝试编写一个正则表达式以允许数字和中间只有一个hypen(不能在开始或结束时)说模式:,是可以接受的,但模式:或或或或是不可接受的 我试过这样做,但这将允许-在开始时,也允许多个- 我不太擅长正则表达式,所以一点解释会很有帮助。 编辑:很抱歉再次打扰你,但我需要的数字只有2位(123-346)应被视为无效。
其中,我需要包括连字符和空格。 这意味着还必须可以输入值“”。
我想验证一个字符串,例如 AB01 CA50 箱 字符串总数必须为四 前两个字符必须是字母表 最后两个字符必须是数字 我使用了以下表达式,但它只能验证前两个字符作为字母表,如何验证最后2个和总数?
问题内容: 我想测试一个字符串是否以a结束。我希望下面的Java行能打印出正确的文字。为什么打印错误? 问题答案: 在Java Regex中,(在String中的任意位置找到匹配项)和(与整个String匹配)之间存在区别。 String仅具有一个方法(实现等效于以下代码:),因此您需要创建一个与完整String匹配的模式:
我需要一个javascript正则表达式来验证电话号码。数字不能是单个零或仅为零。 e. g. 这些是不允许的。 但这些是允许的: 到目前为止,我拥有的javascript正则表达式是: 但这似乎不起作用。 规则是电话号码可以包含数字和和和。它可以以0开头,但电话号码不能是单个0或仅包含或不包含上述字符的多个零。 你能给我指一下正确的方向吗。提前谢谢。