Обернуть весь текст вне тегов в другой тег - PullRequest
0 голосов
/ 01 апреля 2019

Мой HTML может выглядеть (и иногда выглядит) так:

<p>Some text <b>some <i>more text</i></b></p>a little bit more text

Мне нужно заключить каждое слово в эти теги. Таким образом, завернутые слова - это Some, text, some, more, text, a, little, bit, more, text. Я пытался использовать этот код:

html_variable.replace(/(?<=>)[^<>]+(?=<)/g,filter)

где фильтр - это пользовательская функция, с помощью которой я легко переносил каждое слово. Тем не менее, оказалось, что (? <=>), Позитивный взгляд, еще не поддерживается в ios. Я действительно плохо в регулярных выражениях, поэтому я прошу вашей помощи. Есть ли хорошо поддерживаемая альтернатива коду выше?

1 Ответ

1 голос
/ 01 апреля 2019

Попробуйте с этим.

\w+(?![^<>]*>)

См. Демонстрацию здесь

Это может работать для вас, в зависимости от вашего ввода.Во многих случаях это может привести к сбою при замене содержимого, которое вы не хотите заменять (например, содержимое тегов script и title)

В любом случае, для одноразовой работы и ограниченнойinput, Это может работать для вас .

...