Вы можете укоротить повторяющиеся \s
части, используя квантификатор {0,4}
, чтобы 0-4 раза совпадать с пробелом, и добавить якорь $
, чтобы утверждать конец строки, чтобы предотвратить частичное совпадение.
Если впоследствии вам не понадобится это значение группы захвата, вы можете сделать так, чтобы оно не захватывало (?:
.
^\s{0,4}N\s{0,4}O\s{0,4}(?:[0-9a-zA-Z]\s{0,4}){13}$
Regex demo
Если вы не хотите совпадать с новой строкой, вы можете использовать [^\S\r\n]{0,4}
вместо \s{0,4}
, но это лишит цель сделать шаблон меньшим.