preg_quote()
是 PHP 中的一個函數,用于轉義正則表達式中的特殊字符。這樣可以確保它們在正則表達式中被當作普通字符對待,而不會引起錯誤或產生意外的結果。
這個函數接受兩個參數:
$str
:需要轉義的字符串。$delimiter
(可選):正則表達式的定界符。如果提供了定界符,那么該函數還會轉義定界符。默認情況下,不會轉義定界符。示例:
$input = "This is a string with special characters: . * ? + ^ $ [ ] ( ) { } | \ /";
$escaped_input = preg_quote($input);
echo $escaped_input;
輸出:
This is a string with special characters: \. \* \? \+ \^ \$ \[ \] \( \) \{ \} \| \\ \/
如果你想要轉義定界符,可以提供第二個參數。例如:
$input = "This is a string with special characters: . * ? + ^ $ [ ] ( ) { } | \ / #~";
$delimiter = "#";
$escaped_input = preg_quote($input, $delimiter);
echo $escaped_input;
輸出:
This is a string with special characters: \. \* \? \+ \^ \$ \[ \] \( \) \{ \} \| \\ \/ \#\~
在這個例子中,我們使用了 #
作為定界符,所以 #
和 ~
都被轉義了。