Sie können Suche verwenden, indem Sie den folgenden regulären Ausdruck:
(?<=style=)([\w\W]+)(?:<ins>|<del>)([\w\W\s]+)(?:<\/ins>|<\/del>)([\w\W]*)(?=">)
Der Wert des Attributs ist der Text, der mit rückwärts Links Titel:
([\w\W]+) == $1
([\w\W\s]+) == $2
([\w\W]*) == $3
Dann wird diese Kombination geben die erforderlicher Wert für das Attribut:
$1$2$3
Für diese Eingabezeichenfolge:
<div class="class1" style="display:block;">Some Text<del> Orig</del></div>
Sie das Ergebnis:
<div class="class1" style="display:block;">Some Text<del> Orig</del></div>
Für diese Eingabezeichenfolge:
<div class="class1" style="<ins>color:#FFF;</ins>;display:block;">Some Text</div>
Sie das Ergebnis:
<div class="class1" style="color:#FFF;;display:block;">Some Text</div>
Für diese Eingabezeichenfolge:
<div class="class1" style=";display:block;<ins>color:#FFF;</ins>">Some Text</div>
Sie das Ergebnis erhalten:
<div class="class1" style=";display:block;color:#FFF;">Some Text</div>
Demo hier ansehen: https://regex101.com/r/3XKv5s/1
Für jedes Attribut, nicht nur style
:
(?<=[a-zA-Z]=")([\w\W]*)(?:<ins>|<del>)([\w\W\s]*)(?:<\/ins>|<\/del>)([\w\W]*)(?=">)
Siehe Demo hier: https://regex101.com/r/3XKv5s/2
die Zeichenfolge in DOM parsen, durchlaufen dann die Attribute für Tags mit preg_filter Suche –
Müssen Sie nur die Tags entfernen sich oder was sie auch enthalten? I.e. sollte '$ right_string'' @ style' 'color: #FFF ;; display: block;' oder '; display: block;'? –
gewünschte Ausgabe für $ right_string wäre: $ right_string = '