Регулярные выражения не являются регулярным языком и поэтому не могут быть описаны регулярным выражением!
Обновление : более полезный практический ответ
Вы не можете обнаружить допустимые регулярные выражения, используя любое регулярное выражение. Чтобы определить его достоверность, вам нужно просто проанализировать строку с помощью библиотеки регулярных выражений, и она не будет работать, если это недопустимое регулярное выражение. Например, в Java это будет что-то вроде:
boolean isValidRegexp(String s) {
try {
Pattern.compile(s);
return true;
} catch (Exception e) {
return false;
}
}
Эта техника должна работать практически на любом языке.