0
Добрый деньРегулярное чередование выражения не работает
Я тестирую свое регулярное выражение на сайте regex101.com. Регулярное выражение:
<button[^<]*>.*[\s\S]*<\/button>|
<iframe[^<>]*\/>|
<tr>[^<td>]*<\/tr>
Test Text
<table width="30px">
<P>Teste</p><iframe src="teste" /><p>Test</p>
<div><span>Teste Regex</span></div>
<p>Test</p><button onclick="myFunction()">Click me</button>
<table>
<tr><td>34</td></tr>>
</table>
Почему только <button[^<]*>.*[\s\S]*<\/button>
код соответствует? Если я очистить эту часть регулярного выражения и остаться только с этим:
<iframe[^<>]*\/>|
<tr>[^<td>]*<\/tr>
Только <iframe..
подобран
Почему это происходит и как я могу это исправить?
Если это какой-либо вид производственной системы или имеет какую-либо ответственность за безопасность я настоятельно рекомендую вам не использовать регулярное выражение для разбора/чистый HTML - http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contains-tags –
Почему вы не должны пытаться анализировать HTML с помощью регулярных выражений: http://stackoverflow.com/questions/701166/can-you- предоставить-some-examples-of-why-it-is-hard-to-parse-xml-and-html-with-a-reg – Shmiddty
Пользователи приложения могут копировать и вставлять в текстовый редактор rick на нашей апликации, несколько раз пользователи выбирают весь текст со страницы и непреднамеренно копируют кнопки, javascript и т. д. Когда мы показываем на странице otjer текст, вводимый пользователями, этот текст выдает erros, потому что они содержат эти кнопки и коды iframe – tt0686