Регулярное выражение для соответствия строке начинается с <i, за которым не следует «mg», а заканчивается «>» - PullRequest
0 голосов
/ 26 июня 2018

У меня есть требование проверить строку, начинающуюся с <i и сразу же за которой не следует mg, а должна заканчиваться >

Я пробовал следующее регулярное выражение, но оно не сработало.

<[iI][^(mg|MG)][^>]*>
  • <i>: должно совпадать и возвращать true
  • <ind value="abc">: должно совпадать и возвращать true
  • <img/src=x onerror=alert("stack..!")>: не должен совпадать и возвращать false

Пожалуйста, помогите мне, заранее спасибо.

1 Ответ

0 голосов
/ 26 июня 2018

Вы можете использовать это регулярное выражение с отрицательным взглядом:

(?i)<i(?!mg)[^>]*>

RegEx Demo

Описание RegEx:

  • (?i): модификатор для игнорирования регистра
  • <i: сопоставить буквенный текст <i
  • (?!mg): отрицательный взгляд на то, что у нас нет mg на следующей позиции
  • [^>]*: соответствует 0 или более символам, которые не >
  • >: буквальное совпадение >
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...