<p>Dalam artikel sebelumnya, saya membawakan anda "<a href="https://www.php.cn/php-ask-483648.html" target="_blank">Bagaimana untuk melakukan carian dan penggantian ungkapan biasa dalam PHP? </a>》, yang memperkenalkan secara terperinci pengetahuan berkaitan melakukan carian dan penggantian ungkapan biasa dalam PHP Dalam artikel ini, kami akan terus melihat pengetahuan berkaitan segmentasi rentetan dan melarikan diri dalam ungkapan biasa kepada semua orang! </p>
<p><img src="https://img.php.cn/upload/article/000/000/067/617f7f6f7bab3508.jpg" alt="Bagaimana untuk memisahkan dan melepaskan rentetan dengan ungkapan biasa PHP?" ></p>
<p>Dalam artikel sebelum ini, kami belajar tentang melaksanakan padanan ungkapan biasa global dalam PHP, mengesan elemen tatasusunan yang sepadan dengan corak tertentu, melakukan carian ungkapan biasa dan Kami boleh menggantikan operasi sedemikian melalui fungsi <code>preg_match() </code>, fungsi <code>preg_match_all()</code>, fungsi <code>preg_grep()</code> dan fungsi <code>preg_replace()</code> Tujuan utama menggunakan ungkapan biasa adalah untuk mencapai fungsi berkuasa dengan cara yang mudah. </p>
<p>Terdapat banyak operasi antara ungkapan biasa dan rentetan, termasuk menggunakan ungkapan biasa untuk memisahkan rentetan Seterusnya, mari kita lihat cara kita boleh menggunakan ungkapan aksara untuk Memisahkan rentetan. <br></p>
<p><code><strong><span style="font-size: 20px;">preg_split() </span></strong></code><strong><span style="font-size: 20px;">Fungsi</span></strong></p>
<p>Dalam PHP fungsi <code>preg_split()</code> memisahkan rentetan melalui ungkapan biasa Fungsi ini Sintaks format rentetan Terbatas; </p> ialah parameter pilihan Jika ditentukan, subrentetan yang dipisahkan akan dihadkan dan subrentetan terakhir akan mengandungi semua bahagian yang tinggal. Apabila nilai had ialah <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )</pre><div class="contentsignin">Salin selepas log masuk</div></div>, <p> atau <br/>, ini bermaksud "tiada had", dan disyorkan untuk menggunakan NULL. </p><p><code>$pattern</code> ialah parameter pilihan dengan 3 nilai. Jika ditetapkan kepada <code>$subject</code>, preg_split() akan mengembalikan bahagian bukan kosong yang diasingkan. Jika ditetapkan kepada <code>$limit</code>, ungkapan kurungan dalam corak yang dibataskan akan ditangkap dan dikembalikan. Jika ditetapkan kepada <code>-1</code>, rentetan ofset akan dilampirkan pada setiap kejadian padanan. <code>0</code><code>NULL </code>Ini akan menukar setiap elemen dalam tatasusunan yang dikembalikan supaya setiap elemen menjadi subrentetan yang dipisahkan oleh elemen ke-0 dan elemen pertama ialah offset subrentetan dalam subjek Tatasusunan kuantiti. Nilai pulangan ialah tatasusunan yang terdiri daripada subrentetan yang diperolehi selepas membelah rentetan subjek menggunakan corak. </p><p>Seterusnya mari kita lihat penggunaan fungsi preg_split() melalui contoh adalah seperti berikut: <code>$flags</code><code>PREG_SPLIT_NO_EMPTY</code><code>PREG_SPLIT_DELIM_CAPTURE</code>Hasil keluaran: <code>PREG_SPLIT_OFFSET_CAPTURE</code></p><🎜. ><p></p><p>Contohnya adalah seperti berikut:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
echo "<pre class="brush:php;toolbar:false">";
$subject = 'PHP中文网:http://www.php.cn/, baidu百度:http://www.baidu.com/';
$pattern = '/[\s,:]+/';
print_r( preg_split($pattern, $subject) );
print_r( preg_split($pattern, $subject, 3) );
?></pre><div class="contentsignin">Salin selepas log masuk</div></div><p>Hasil keluaran:<br/></p><p><img src="https://img.php.cn/upload/image/234/429/279/1635748311992399.png" title="1635748311992399.png" alt="Bagaimana untuk memisahkan dan melepaskan rentetan dengan ungkapan biasa PHP?"/></p><p>Seperti yang dapat dilihat daripada contoh di atas, fungsi preg_split() boleh Menyelesaikan pemisahan rentetan dengan ungkapan. Seterusnya mari kita lihat cara untuk melarikan diri daripada ungkapan biasa. </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
$str = 'father mother andyou';
var_dump($str);
$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
var_dump($chars);
?></pre><div class="contentsignin">Salin selepas log masuk</div></div><kod><p><br/>PHP preg_quote()</p><p></code><img src="https://img.php.cn/upload/image/406/631/908/1635750264433447.png" title="1635750264433447.png" alt="Bagaimana untuk memisahkan dan melepaskan rentetan dengan ungkapan biasa PHP?"/></p> Fungsi <p></p><p><code><strong><span style="max-width:90%">PHP preg_quote()</span></strong></code>Aksara biasa Termasuk semua aksara boleh cetak dan tidak boleh cetak yang tidak dinyatakan secara eksplisit sebagai aksara meta, termasuk semua huruf besar dan huruf kecil, nombor, tanda baca dan beberapa simbol. Ungkapan biasa yang paling mudah ialah satu aksara biasa yang digunakan untuk membandingkan rentetan carian. Sebagai contoh, ungkapan biasa aksara tunggal /A/ akan sentiasa sepadan dengan huruf A. <strong><span style="font-size: 20px;">Selain aksara biasa, ungkapan biasa juga boleh mengandungi "metacharacters". Metacharacter boleh dibahagikan kepada metacharacter single-character dan metacharacter multi-character. Contohnya, metacharacter d, yang sepadan dengan aksara angka. Fungsi </span></strong>PHP </p> digunakan untuk melepaskan rentetan ungkapan biasa, iaitu, menambahkan garis miring ke belakang <p> di hadapan aksara khas Format sintaks fungsi ini adalah seperti berikut: </p><p> </p>Perlu diambil perhatian bahawa: <p><code>preg_quote()</code><code></code></p> mewakili rentetan ungkapan biasa <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">preg_quote($str [, $delimiter = NULL])</pre><div class="contentsignin">Salin selepas log masuk</div></div> ialah parameter pilihan dan aksara tambahan perlu dilepaskan. Jika parameter <p> ditentukan, aksara yang ditentukan juga akan terlepas. Ini biasanya digunakan untuk melepaskan pembatas yang digunakan oleh fungsi PCRE. <br/> ialah pembatas yang paling biasa. Fungsi </p><p><code>$str</code> akan menambah garis miring ke belakang sebelum setiap aksara ungkapan biasa yang disediakan oleh parameter <code>$delimiter</code>. Ini biasanya digunakan apabila beberapa rentetan masa jalan perlu dipadankan sebagai ungkapan biasa. <code> $delimiter </code><p>正则表达式特殊字符有:<code>.</code> <code>\</code> <code>+</code> <code>*</code> <code>?</code> <code>[</code> <code>^</code> <code>]</code> <code>$</code> <code>(</code> <code>)</code> <code>{</code> <code>}</code> <code>=</code> <code>!</code> <code><</code> <code>></code> <code>|</code> <code>:</code> <code>-</code> 。要清楚<code>/</code>不是正则表达式特殊字符。</p><p>接下来我们通过示例来看一下使用 preg_quote() 函数对字符串进行转义,示例如下:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
$url = 'http://www.baidu.com/';
echo preg_quote($url) . "<br />";
echo preg_quote($url, "/") . "<br />";
$textbody = "baidu百度 is *very* good to study.";
$word = "*very*";
echo preg_replace( "/".preg_quote($word)."/", "<i>".$word."</i>", $textbody );
?></pre><div class="contentsignin">Salin selepas log masuk</div></div><p>输出结果:<br/></p><p><img src="https://img.php.cn/upload/image/801/582/141/1635749241170496.png" title="1635749241170496.png" alt="Bagaimana untuk memisahkan dan melepaskan rentetan dengan ungkapan biasa PHP?"/></p><p>示例如下:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><?php
$keywords = '$40 for a g3/400';
$keywords = preg_quote($keywords, '/');
echo $keywords; // 返回 \$40 for a g3\/400
?></pre><div class="contentsignin">Salin selepas log masuk</div></div><p>输出结果:<br></p>
<p><img src="https://img.php.cn/upload/image/733/302/724/1635750498161054.png" title="1635750498161054.png" alt="Bagaimana untuk memisahkan dan melepaskan rentetan dengan ungkapan biasa PHP?"></p>
<p>上述示例中,便是通过preg_quote() 函数用来对正则表达式字符串进行转义。</p>
<p>大家如果感兴趣的话,可以点击《<a href="https://www.php.cn/course/list/29/type/2.html" target="_blank">PHP视频教程</a>》、《<a href="https://www.php.cn/course/59.html" target="_blank">正则表达式手册</a>》进行更多关于PHP和正则表达式知识的学习。</p>
Atas ialah kandungan terperinci Bagaimana untuk memisahkan dan melepaskan rentetan dengan ungkapan biasa PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!