我创建了一个匹配
的正则表达式但它不应该匹配
我的声望表达
^user_(?:ent(?=_mov)|mov(?=_ent)).*$
一切都很好。但是当我进行详尽的测试时,我的regx失败了。
任何建议都将不胜感激。
PS:我已预先编译了我的正则表达式,并且未声明为静态。
答案 0 :(得分:2)
保持简单。
user_(ent_mov|mov_ent)_?\d*
使用String#matches()
检查匹配项。
String regex="user_(ent_mov|mov_ent)_?\\d*";
System.out.println("user_ent_mov".matches(regex)); //true
System.out.println("user_ent_mov_123".matches(regex));//true
System.out.println("user_mov_ent123".matches(regex)); //true
System.out.println("user_ent".matches(regex)); //false
System.out.println("user_ent123".matches(regex)); //false
System.out.println("user_mov123".matches(regex)); //false