正则表达式在java中删除后跟另一个字符的字符
使用java中的正则表达式查找符合以下规则的单词 正则表达式规则:正则表达式在java中删除后跟另一个字符的字符,java,regex,Java,Regex,使用java中的正则表达式查找符合以下规则的单词 正则表达式规则: 单词可以以-(可选前缀)开头,字母可以是这些“c”“p”“y”“r”“a”“u”中的任意一个 然后是大写字母T 后跟0到9之间的数字 (可选后缀),后跟不包含的小写字母 字母p或y或r或u。可以是一个或两个字母 问题:如果上面提到的单词后缀是a、b或c,后跟大写字母N,则正则表达式应该忽略该字母及其后面的内容。查看测试用例以获得澄清 测试用例 pT1c-应返回整个单词pT1c(因为N不跟在c后面) cT4bcN2-应该只返回cT
\b[cpyrau]*T\d(?:(?![a-c]N)[a-oqstv-z]){0,2}
这不是一个要求锻炼的地方。这不是一个练习。我也给出了我在问题中尝试过的解决方案。我只是想寻求帮助,为什么它包含字母c。@Ferie当然是。OP解释了要求并展示了他们的尝试。因此,测试用例末尾的2也不允许,因为根据(4),它只能是小写字母,不包括
pryu
。您应该显示一些其他更复杂的测试用例及其预期结果。是的。a/b/cN之后的任何内容也应该被丢弃