Большинство движков регулярных выражений позволяют документировать регулярные выражения. Если они этого не делают, часто есть методы , доступные для их чтения. Я собираюсь игнорировать эту часть вопроса и предположить, что регулярное выражение может быть адекватно задокументировано.
Я думаю, что проблема не столько в сложности регулярного выражения, сколько в его пригодности. Регулярное выражение может быть длинным и сложным, но если оно подходит для проблемы, то решение, не являющееся регулярным выражением, будет, по крайней мере, таким же сложным и, конечно, гораздо более длинным.
Проблема в том, что регулярное выражение используется для решения проблемы другого типа. Интенсивное использование осмотров часто свидетельствует об этом. Если проще следовать последовательности обычного кода, который решает ту же проблему простым способом, то это правильное решение, независимо от того, насколько коротким будет регулярное выражение.