2012-04-20 32 views
1

文字や数字が含まれているかどうかチェックしたい文字列があります。これらの文字は、a-z、A-Z、およびすべての数字です。文字列に文字/数字が含まれているかどうかを確認する

これは例です: $ goodstring = "abcdefg%$#& asdqwe"; $ badstring = "%$#&%#/ & /#$%!# - ";

$ goodstringに文字と数字が含まれているかどうかを確認し、ifがtrueを返します。 $ badstringに文字/数字が含まれているかどうかを確認し、そうでない場合はfalseを返します。

私はpreg_matchも使用しましたが、これは文字列内に文字/数字がない場合にのみ機能します。

+0

あなたは文字列が含まれているかどうかを確認したいですaz、AZ、数字のみの文字か、少なくとも1つが含まれているかどうかチェックしたいのですか? –

+0

**私はpreg_match **も使用しました。あなたはそれを間違えたかもしれません。あなたが試したことを共有してみませんか? – Nanne

+0

文字/数字が含まれているかどうかチェックしたい - 1つ以上の文字が含まれている場合は重要ではない、%$#文字を含むべきではない& 私はこれを試しましたが、うまくいかない:preg_match( "/^([a-zA-Z0-9])+ $/i "、$ badstring) – user1257255

答えて

2

ここでは、( "のみ" バージョンを)行く:

$containsOnlyLettersOrNumbers = (preg_match('~^[0-9a-z]+$~i', $string) > 0); 

または(あなたが正確に何をしたいに応じて):

$containsLettersOrNumbers = (preg_match('~[0-9a-z]~i', $string) > 0); 
-1
var_dump(preg_match('#[0-9]|[a-z]#i', $goodstring)); 
var_dump(preg_match('#[0-9]|[a-z]#i', $badstring)); 
関連する問題