PHP Regex, который просматривает теги <br>, которые могут или не могут быть там - PullRequest
0 голосов
/ 13 июня 2019

Я пишу регулярное выражение, которое просматривает HTML.Иногда в середине предложения есть один или два тега разрыва.Мне нужно иметь возможность захватить все предложения и игнорировать теги
.

Я пробовал много версий этого.Как и следовало ожидать, это html-письмо, которое оно просматривает. Если я расширю группу, включив в нее теги разрыва, то, конечно, она их захватит

<div class=&quot;content-spacer&quot;[^>]*>[\r\s]*<p[^>]*>[\r\s]*<strong[^>]*>[^<]*<\/strong>[\r\s]*<\/p>[\r\s]*<p [^>]*>([^<]*)<br> <br> Thanks so much for your time! <br> Tammy <\/p>

Я попробовал варианты этого регулярного выражения.

HTML-код, который я просматриваю, это

<tbody>
 <tr style=&quot;padding:0;vertical-align:top;text-align:left;&quot;> 
 <td style=&quot;word-break:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;hyphens:auto;border-collapse:collapse;padding:0;vertical-align:top;text-align:left;color:rgb(102, 102, 102);font-family:Helvetica, Arial, sans-serif;font-weight:normal;margin:0;line-height:28px;font-size:16px;&quot;> 
 <div class=&quot;content-spacer&quot; style=&quot;padding-bottom:20px;&quot;> 
 <p style=&quot;margin:10px 0;color:rgb(102, 102, 102);font-family:Helvetica, Arial, sans-serif;font-weight:normal;padding:0;text-align:left;line-height:28px;font-size:16px;&quot;><strong style=&quot;color:rgb(51, 51, 51);&quot;> Message from Tammy Waring</strong></p> 
 <p style=&quot;margin:10px 0;color:rgb(102, 102, 102);font-family:Helvetica, Arial, sans-serif;font-weight:normal;padding:0;text-align:left;line-height:28px;font-size:16px;&quot;> Hi there! I am looking for renting a cabin and was wondering if this cabin allows outside fires within a fire pit ? <br> <br> Thanks so much for your time! <br> Tammy </p> 
 </div> 

Я хочу, чтобы он захватил группу в конце и проигнорировал br, я могу либо захватить все, заканчивающееся именем Тэмми, либо я могу взятьна первый тег br

...