Это не так просто. Если вы хотите отменить слово, вы должны разделить его на буквы и отрицать каждую букву.
чтобы отрицать
/svn/
вам нужно написать
/[^s][^v][^n]/
Итак, то, что вы хотите отфильтровать, превратится в действительно уродливое регулярное выражение, и я думаю, что лучше использовать это регулярное выражение
/svn|cvs|nvs|mvc/
и когда вы проверяете свою строку против него, просто отрицайте результат.
В JS это выглядело бы гораздо меньше:
!/svn|cvs|nvs|mvc/.test("this is your test string");
Ответ 3
Ваше регулярное выражение неверно. Между квадратными скобками вы можете поместить символы, требующие или игнорировать. Если вы не найдете ^(svn|cvs|nvs|mvc)$, вы в порядке.