正则表达式 - 接受 AZ 不包括固定长度的一些字母

标签 regex regex-negation

我找不到如何从字符串的固定长度部分排除一些字符

^XXX-\d{4}-(?![XYT])[A-Z]{4}$我可以排除 XYT从最后一个字符串的第一个字符开始

XXX-0000-AAAA is ok
XXX-0000-XAAA is not ok

我的问题是我不想要 X , YT在最后一段的任何部分
XXX-0000-AAXA is not ok
XXX-0000-ABXX is not ok
XXX-0000-ABCT is not ok
and so on

我怎样才能做到这一点?

更准确地说,我补充说 XYT 是变量,因此固定列表的解决方案有效但不方便

最佳答案

为什么不直接使用 [A-SU-WZ]{4}最后一部分? IE。只匹配你想要的字母。

或者,使重复的​​前瞻部分:(?:(?![XYT])[A-Z]){4}

关于正则表达式 - 接受 AZ 不包括固定长度的一些字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43818911/

相关文章:

javascript - 提取括号之间的字符串

python - 正则表达式解析字符串中的百分比

javascript - 如何在 ExtJS 中使用 maskRe 避免字符串末尾出现空格?

Python 正则表达式否定元字符

java - 正则表达式仅阻止数字或空格,但允许数字和空格作为输入

regex - 特定正则表达式的帮助 - 不包含某些字符串

regex - Spring @RequestMapping 用于除/api/或/rest/之外的所有内容(否定正则表达式中的特定单词)

Java 正则表达式模仿数字的 if-else

java - 拆分包含连字符和减号的字符串

正则表达式根据模式排除匹配