отрицательный прогноз регулярных выражений с использованием javascript

#javascript #regex #regex-lookarounds

#javascript #регулярное выражение #поиск регулярных выражений

Вопрос:

И спасибо за вашу помощь!

Я пытаюсь сделать отрицательное включение

У меня есть следующее: 0[1-9][0-9]{5} это работает на позитивное включение против этого:
0258714 0465666 1213655 568464668 225 75487 021523
56556 0236589

но когда я пытаюсь это

(?!0[1-9][0-9]{5})

он не включает противоположное
0258714 0465666 1213655 568464668 225 75487 021523 56556 0236589

Как мы могли бы заставить это работать?

см. Ссылку для настройки: https://regex101.com/r/OkMliM/1

Комментарии:

1.Вы можете добавить границу слова и сопоставить цифры b(?!0[1-9][0-9]{5})d regex101.com/r/8HhsS8/1

Ответ №1:

Сам по себе прогноз не привязан и будет соответствовать всем позициям, в которых утверждение истинно.

Что вы можете сделать, так это использовать границу слова, за которой следует утверждение. Если это true, то сопоставьте 1 или более цифр.

 b(?!0[1-9][0-9]{5}s)d 
  

Смотрите демонстрацию регулярных выражений

добавлен s, чтобы заставить его работать

Комментарии:

1. Итак, я попробовал это с длинной строкой сегодня, и это не заняло: 0221547 02556 02662933434343423423423423505 0565 05 любые предложения… NVM Я добавил a s в селектор, и он работает