Verwenden Sie gemeinsame Stile, um aufeinanderfolgende Pseudo-Tags durch HTML-Tags zu ersetzen
P粉9261742882023-09-01 18:44:45
0
1
692
<p>Ich habe diese Zeile</p>
<pre class="brush:php;toolbar:false;">a[link], a[link] a [link] text text text a [link] text a[link] text</pre>
<p>Also m?chte ich den ersten Link vor dem Text finden und eine Operation an ihnen durchführen und sie in einem speziellen Stil hervorheben (in diesem Fall vielleicht mehr oder weniger drei) und die anderen Links nach dem Text finden und hervorheben sie in verschiedenen Stilen. </p>
<p>Ich konnte nur die ersten drei Links finden, aber ich wei? nicht, wie gut ich das gemacht habe</p>
<pre class="brush:php;toolbar:false;"><?php
$re = '/^(a[(w+[s+]?)+],?s?)+/iu';
$str = 'a[link], a[link] a[link] text text text a[link] text a[link] text';
preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0);
var_dump($matches);
?></pre>
<hr />
<p>Ich werde nun versuchen, ein anschauliches Beispiel dafür zu geben, was erforderlich ist:
Es gibt einen solchen Absatz</p>
<blockquote>
<p>a[link1], a[link2] a[link3] Text Text Text a[link4] Text a[link5] Text</p>
</blockquote>
<p>In diesem Artikel gibt es Links mit der Bezeichnung <code>a[...]</code>. In Zukunft muss ich diese Links ersetzen und in folgende Form ?ndern: </p>
<blockquote>
<p><a href="link1" class="style1">link1</a><a href="link2" class="style1">link2</a><a href=" link3" class="style1 ">link3</a> Text Text Text<a href="link4" class="style2">link4</a> Text<a href="link5" class="style2 "> ;link5</a> text</ p>
</blockquote>
<p>Den ersten drei verknüpften Klassen wird der Wert <code>style1</code> zugewiesen. Dem Link, der auf den Text folgt, ist <code>style2</code> bereits ein Klassenwert zugewiesen. </p>
<p>Zun?chst k?nnen drei Links vor dem Text stehen, vier oder sogar einer, und nach dem Text k?nnen beliebig viele Links in beliebiger Reihenfolge stehen. </p>