Как мне сопоставить строку, которой нет в тегах HTML или []? - PullRequest
0 голосов
/ 30 октября 2019

Я делаю функцию форматирования в PHP и хочу использовать Regex для замены некоторых слов ссылками (<a href>). Единственная проблема заключается в том, что я хочу исключить любые вхождения в тегах HTML или тегах [].

Поэтому их не следует заменять:

  • <span class='haha Test'> test </span> (оба)
  • [test]
  • [tag = "test"]
  • <img src="/path/test.jpg" />

Их следует заменить:

  • Это тест
  • Test.Test. (оба)
  • Это [тест] и это тоже «тест». (оба)
  • Он также может иметь это [в качестве тестового текста. (несбалансированные скобки)
  • Может быть, они набрали "тест, который также должен работать

У меня нет контроля над входом. Он должен заменить только первый случай, и этодолжны игнорировать вводы и пробелы.

Я достаточно далеко продвинулся с этим регулярным выражением: https://regexr.com/4nrpe

Если бы какой-либо эксперт по регулярным выражениям мог помочь мне, я был бы очень признателен!

...