Візьміть це регулярний вираз: /^[^abc]/. Це буде відповідати будь-якому одному символу на початку рядка, за винятком a, b або c.
Якщо ви додасте *після нього - /^[^abc]*/- регулярний вираз буде продовжувати додавати кожен наступний символ до результату, поки він не зустріне або an 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?