2012-01-18 19 views
0

文字列内の@文字を探したい場合は、 preg_matchを使用しますか?文字列内の@文字を見つける

これは私が今試みていることです。

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

助けていただければ幸いです。

+1

なぜ '^'を使うのか説明できますか? – Tomalak

答えて

5

正規表現は必要ありません。 strposを使用できます。 manualから

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

は、針が干し草の山列(オフセットとは無関係)の beginnningに対して存在する場合の位置を返します。 でも、文字列の位置は0から始まって1から始まらないことに注意してください。

戻り値FALSE針が見つからなかった場合。

2

検索が簡単なので、striposをお勧めします。

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

@記号の大文字と小文字を区別しない一致? :-P – cmbuckley

2

preg_matchは@記号を見つけようとするとちょっと残念です。 strposの使用はより適切です。特に、正規表現マッチングを実際に行っていないためです。

関連する問題