请教跟&&或者||匹配的正则表达式,只能同时匹配两个&或者|,不能单个匹配&或者|
多谢!
只能匹配&&,不能是一个&,或者&&&,也不能是&&&&,或者更多的&
我是要和前面的[\*|\/]这些符号合在一起验证的
[&|]{2}
貌似不行哎 如果单独的话可以 但是如果是[\*|[&|]{2}]单个的也能匹配
@阳光明媚Ryan: 不好意思,这个表达式有问题~
不明白需求,如果是这样的:*号后面只能有2个$$或||,那么可以试试这个:
\*(?:([$|])\1)(?:(?!\1))
可以匹配“*$$”,"*$$xxx","*||"之类的
&&|\|\|
^[&|]{2}&
“|”字符就是或者的意思
假如是匹配身份证号 :d{15}|d{18} -- 匹配15位数的身份证或者18位数的身份证
这只用了一个| 但你知道了“|‘字符是干嘛的了,加多少"|"都无所谓了
代码如下:
[Test] public void RegexTest() { var text = "*||&&"; Console.WriteLine(Regex.IsMatch(text, @"[\*|\/]([&]{2}|[|]{2})")); }
java的语法你勉强看看吧
java.util.regex.Pattern pattern = java.util.regex.Pattern.compile("^[^$]*[$]{2}[^$]*$"); Matcher matcher = pattern.matcher("dsfdsa$$$fdsfdsa"); if( matcher.matches() ){ System.out.println("true"); }else{ System.out.println("false"); }