2012-01-18 109 views
0

如果我想在字符串中找到@字符。我會用preg_match嗎?找到字符串中的@字符

這就是我現在要做的。

if (preg_match('/^@/', $email)===TRUE) { 

任何幫助表示讚賞。

+1

你能解釋你爲什麼使用'^'? – Tomalak 2012-01-18 22:03:57

回答

5

正則表達式不是必需的。您可以使用strpos

if (strpos($email, "@") !== FALSE) 
    //... 

manual

返回將針存在相對於 beginnning草堆串的(獨立的偏移)的位置。還要注意 該字符串位置從0開始,而不是1

返回FALSE 如果沒有找到針頭。

2

由於您的搜索很簡單,我建議您使用stripos

// stripos returns false if not found 
$found = (stripos($str, "@")) !== false); 
+2

@符號不區分大小寫匹配? :-P – cmbuckley 2012-01-18 22:06:18

2

如果您只是想要找到@符號,preg_match有點矯枉過正。使用strpos會更合適,特別是因爲你沒有真正進行任何正則表達式匹配。