Возьмите это регулярное выражение: /^[^abc]/. Это будет соответствовать любому отдельному символу в начале строки, кроме a, b или c.
Если вы добавите *после него - /^[^abc]*/регулярное выражение будет продолжать добавлять каждый последующий символ к результату, пока не встретит или a, или b , или c .
Например, с исходной строкой "qwerty qwerty whatever abc hello"выражение будет соответствовать до "qwerty qwerty wh".
Но что, если бы я хотел, чтобы совпадающая строка была "qwerty qwerty whatever "
... Другими словами, как я могу сопоставить все до (но не включая) точную последовательность "abc" ?
"qwerty qwerty whatever "- не считая "abc". Другими словами, я не хочу, чтобы полученное совпадение было "qwerty qwerty whatever abc".
do string.split('abc')[0]. Конечно, не официальный ответ на эту проблему, но я нахожу это более простым, чем регулярное выражение.


match but not including?