<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Vorunabhängiger Beispiel</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Dies ist die vorunabhängige Ausgabe,Wird verwendet, um Trenneffekte zu demonstrieren。\n"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Nichts mit dem Inhalt des Artikels zu tunPHPCodebeispiel。\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
<span class="hljs-comment">/*
Artikel Titel: Wie man es benutztsubstr_countÜberspringen Sie bestimmte Teile für die Substring -Zählung bei der Funktion?
*/</span>
</span><span><span class="hljs-comment">// PHPMitte,substr_count函数用于统计一个字符串Mitte某个子串出现的次数。</span></span><span>
</span><span><span class="hljs-comment">// Grammatik: substr_count(string $haystack, string $needle, int $offset = 0, int $length = ?): int</span></span><span>
</span><span><span class="hljs-comment">// Das Problem ist:Manchmal wollen wir die Anzahl der Substrings zählen, die auftreten sollen,Überspringen Sie Strings für bestimmte bestimmte Teile。</span></span><span>
</span><span><span class="hljs-comment">// Zum Beispiel,我们想统计字符串Mitte“apple”Anzahl von,Aber möchte nicht das in quadratischen Klammern eingewickelte Teil berechnen "[apple]"。</span></span><span>
</span><span><span class="hljs-comment">// Beispielzeichenfolge:</span></span><span>
</span><span><span class="hljs-variable">$text</span></span><span> = </span><span><span class="hljs-string">"apple [apple] apple (apple) apple"</span></span><span>;
</span><span><span class="hljs-comment">// Allgemeine Statistik:</span></span><span>
</span><span><span class="hljs-variable">$total_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">substr_count</span></span><span>(</span><span><span class="hljs-variable">$text</span></span><span>, </span><span><span class="hljs-string">"apple"</span></span><span>);
</span><span><span class="hljs-comment">// Ausgangsergebnis: 5(Einschließlich quadratischer Klammernapple)</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Allgemeine Statistik: <span class="hljs-subst">$total_count</span></span></span><span>\n";
</span><span><span class="hljs-comment">// Verfahren1:Bestimmte Teile mit der Regelmäßigkeit ausschließen</span></span><span>
</span><span><span class="hljs-comment">// Wir können es zuerst benutzenpreg_replaceEntfernen Sie den Teil, den Sie nicht zählen möchten,Dann benutze es noch einmalsubstr_count</span></span><span>
</span><span><span class="hljs-variable">$cleaned_text</span></span><span> = </span><span><span class="hljs-title function_ invoke__">preg_replace</span></span><span>(</span><span><span class="hljs-string">'/\[.*?\]/'</span></span><span>, </span><span><span class="hljs-string">''</span></span><span>, </span><span><span class="hljs-variable">$text</span></span><span>); </span><span><span class="hljs-comment">// Entfernen Sie den Inhalt in quadratischen Klammern</span></span><span>
</span><span><span class="hljs-variable">$count_exclude_brackets</span></span><span> = </span><span><span class="hljs-title function_ invoke__">substr_count</span></span><span>(</span><span><span class="hljs-variable">$cleaned_text</span></span><span>, </span><span><span class="hljs-string">"apple"</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Statistiken nach Quadratklammern sind ausgeschlossen: <span class="hljs-subst">$count_exclude_brackets</span></span></span><span>\n";
</span><span><span class="hljs-comment">// Verfahren2:Manuelle Segmentierung und Statistik</span></span><span>
</span><span><span class="hljs-comment">// Wenn Sie mehrere Modi flexibler überspringen möchten,Sie können zuerst die Zeichenfolge teilen,Statistiken nacheinander</span></span><span>
</span><span><span class="hljs-variable">$parts</span></span><span> = </span><span><span class="hljs-title function_ invoke__">preg_split</span></span><span>(</span><span><span class="hljs-string">'/(\[.*?\])/'</span></span><span>, </span><span><span class="hljs-variable">$text</span></span><span>); </span><span><span class="hljs-comment">// In quadratischen Klammern geteilt</span></span><span>
</span><span><span class="hljs-variable">$count_manual</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>;
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$parts</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$part</span></span><span>) {
</span><span><span class="hljs-variable">$count_manual</span></span><span> += </span><span><span class="hljs-title function_ invoke__">substr_count</span></span><span>(</span><span><span class="hljs-variable">$part</span></span><span>, </span><span><span class="hljs-string">"apple"</span></span><span>);
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Manuelle Segmentierungsstatistikergebnisse: <span class="hljs-subst">$count_manual</span></span></span><span>\n";
</span><span><span class="hljs-comment">// Zusammenfassen:</span></span><span>
</span><span><span class="hljs-comment">// 1. substr_countDie Funktion selbst kann bestimmte Bereiche nicht direkt überspringen,Müssen reguläre oder String -Operationen kombinieren。</span></span><span>
</span><span><span class="hljs-comment">// 2. verwendenpreg_replace去掉不计入的部分是常用Verfahren。</span></span><span>
</span><span><span class="hljs-comment">// 3. Komplexe Anforderungen,Sie können zuerst die Zeichenfolge teilen,Statistiken nach Segment,Flexible Kontrolle der Bereiche, die übersprungen werden müssen。</span></span><span>
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
<hr> <? php // Beispiel für den schwanzunabhängigen Teil Echo "Dies ist ein schwanzunabhängiges Ausgangsbeispiel, das zur Trennung von Artikeln von anderen Inhalten verwendet wird. \ n"; ?>
<span></span>