2011-06-16 309 views
0

如何preg_match符號組合|〜|或%* |特定符號的PHP Preg_match

$harms = 'i.e. flow of electricity in contact with person(s)dsn fds fsdnfsnd fsd fmnds f|~|mnsdf <br /><br />ajshajkhsjkahs|~|'; 
if(preg_match('#\|~\|#', $harms)) { 
echo 'true'; 
} 
+0

使用反斜線正則表達式元字符(在你的情況下是'|'和'*')。 – mario 2011-06-16 22:36:58

+0

不適用於|〜| – hozza 2011-06-16 22:38:58

+0

發佈完整的'preg_match()'代碼。 – mario 2011-06-16 22:40:35

回答

1

你一定要逃逸正則表達式特殊字符用反斜槓\

preg_match('#\|~\|#', $s); 
preg_match('#%\*\|#', $s); 

你也可以使用preg_quote()轉義特殊字符:

preg_match('#'.preg_quote('|~|%*|','#').'#', $s); 
+0

這不起作用 – hozza 2011-06-16 22:45:33

+0

請看我的代碼 – hozza 2011-06-16 22:50:35

+0

你的代碼爲我工作,它打印'true' – Floern 2011-06-16 22:52:08