Regex ile boru sembolü için kontrol edin

2 Cevap php

Boru sembolü | bildiğim kadarıyla, 'ya' ifadesinin bir tür olarak düzenli ifade kullanılır. Bu, ya o, ya o, ya o, vb Ya ..

Ancak, bu sembolün varlığı için, düzenli bir ifade ile bir dize kontrol etmek istiyoruz. Ben kaçan denedim, ama bu işe görünmüyor.

Nasıl @, vb # gibi, ben zaten mevcut olması için bir dizi sembol kontrol ediyorum, özellikle, bunu, ve do ..

2 Cevap

$ cat 1933190.php

<?php
    echo preg_match("/\|/", "This is not a pipe.") . "\n";
    echo preg_match("/\|/", "The | the | this is a |.") . "\n";
?>

Çıktı:

$ php 1933190.php
0
1

Bu karakteri kaçan doğru yoldur. Ama siz de dize bildiriminde kaçış karakterleri kaçış emin olun:

"\\|"
'\\|'

Başka bir yolu orada sadece ], ^ (sadece başlangıcında), {[karakterleri beri ([|]) bir karakter sınıfını kullanmak olacaktır (3)]}, böylece kaçış karakteri \ kendisi ve özel bir anlamı var sınırlayıcı ve düz karakterler olarak ifade edilmesi bilseniz kaçtı gerekir.