Я ищу регулярное выражение, которое будет соответствовать строке, которая начинается с одной подстроки и не заканчивается определенной подстрокой.
Пример:
// Updated to be correct, thanks @Apocalisp
^foo.*(?<!bar)$
Соответствует всем, что начинается с "foo" и не заканчивается на "bar". Я знаю о синтаксисе [^...], но я не могу найти ничего, что сделает это для строки вместо одиночных символов.
Я специально пытаюсь сделать это для Java regex, но я столкнулся с этим раньше, поэтому ответы на другие двигатели регулярных выражений тоже будут отличными.
Благодаря @Kibbee для проверки того, что это работает и на С#.