我有一個關於preg_match
語法中的一個字符的問題。 我只是想完全理解。 \w
尋找字母數字字符和下劃線。Preg_match php解釋
我的問題是\
在\w
和@
之前的含義是什麼?
這是否意味着,它將使:
- 任何字母數字
- 任何反斜線
- 任何破折號
,或者這是反斜線意味着挑出下面的性格嗎?
當我在w3schools.com示例中測試它時,我可以在電子郵件地址中使用反斜槓進行驗證,但當它們被回顯時會被刪除。
$email = test_input($_POST["email"]);
// check if e-mail address syntax is valid
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email))
{
$emailErr = "Invalid email format";
}
我不認爲你真的需要反斜槓那裏。它通常用於逃避後面的字符。 – putvande
\有逃避字符串。 http://www.php.net/manual/en/regexp.reference.escape.php。你也可以閱讀這個:http://stackoverflow.com/questions/3115150/how-to-escape-regular-expression-special-characters-using-javascript –
謝謝下面的鏈接解釋到底我需要知道逃脫序列¶ 反斜線字符有幾個用途。首先,如果它後面跟着一個非字母數字字符,它將帶走字符可能具有的任何特殊含義。 – Torads