Вопрос:
У меня есть регулярное выражение, которое работает: ABC-[0-9]+
У меня также есть регулярное выражение: DEF-[0-9]+
Но я не понимаю, как объединить два, чтобы они соответствовали им как
Я пробовал ABC-[0-9]+ | DEF-[0-9]+, но это не помогло…
Это все в регулярном выражении Java, если это имеет значение.
Лучший ответ:
Если вам требуется регулярное выражение, которое соответствует последовательностям, начинающимся с ABC или DEF, попробуйте следующее:
(ABC|DEF)-[0-9]+
Но кроме двух символов пробега вокруг |, ваше регулярное выражение также должно совпадать с этим:
ABC-[0-9]+|DEF-[0-9]+
Эти два регулярных выражения соответствуют одному и тому же набору строк.
Ответ №1
Вам нужно сгруппировать два регулярных выражения, используя атомную группу:
(?>ABC-[0-9]+)|(?>DEF-[0-9]+)
Ответ №2
Попробуйте (ABC-[0-9]+)|(DEF-[0-9]+)