Итак, исходя из вашего регулярного выражения, некоторые вещи, которые вы пытались сделать, были синтаксически неверны.Количественная оценка через фигурные скобки не требуется, если вы хотите, чтобы это происходило только один раз, из-за чего {1}
становится избыточным.Итак, я удалил эту часть из вашего регулярного выражения.Вторая вещь в вашем наборе символов,
[^SLOIBZsloibz|^0-9]
, как я вижу, вы хотите отрицать некоторые алфавиты и 0-9 цифр.Вам не нужно применять чередование, когда вы используете набор символов []
.Помимо отрицания этих алфавитов в вашем наборе символов, если вы также хотите отрицать число 0-9, вам просто нужно поместить его туда, и ваш правильный правильный набор символов станет,
[^SLOIBZsloibz0-9]
После применения этих исправлений вваше регулярное выражение, ваше регулярное выражение становится этим, и это то, что вам нужно, я думаю.
^[1-9][^SLOIBZsloibz0-9][^SLOIBZsloibz][0-9]-?[^SLOIBZsloibz0-9][^SLOIBZsloibz][0-9]-?[^SLOIBZsloibz0-9][^SLOIBZsloibz0-9][0-9][0-9]$
Демо
Дайте мне знать, если это работаетхорошо для вас.