2011-11-21 14 views
1

完全に数字のもの以外の英数字のパターンにマッチする正規表現が必要です。アルファベットの正規表現のパターンマッチング

ダウンブロークン
 
asdfgesod valid 
1asdndwdd valid 
asd124asd valid 
a2asd43bd valid 
123346678 invalid 
+0

私はあなたが最初の4つの試合を見ることができるようにし、第五は、意図していないとして、[AZ]クラス – tuze

答えて

3
/^[a-z0-9]*[a-z][a-z0-9]*$/i 

^[a-z0-9]* - 文字列(ゼロを含む)任意の数で始まる英数字の

[a-z]は、 - 文字列の両端 - 文字列a-z文字

[a-z0-9]*$を有します任意の数字(ゼロを含む)の英数字

+0

必要します。http: //codepad.viper-7.com/HiTFio – Paulpro

+0

答えが簡単なときは馬鹿だと感じる。私はばかげたことをたくさん試しました。どうもありがとうございます。あなたは無限の頭痛から私を救った。 – tuze

+0

@tuzeよろしくお願いします。また、(大文字) 'A-Z'をアルファベット文字とみなしたくない場合は、最後に' i'を含めないでください。 – Paulpro

0

Javaの場合に使用StringUtils.isNumeric(String value)文字列に数字のみが含まれているかどうかを確認します。

BTW:文字列が正規表現と一致する場合:"^\d*$"これは数字のみを含むことを意味します。

0

あなたは試すことができます:

/^(?![0-9]+$)[a-z0-9]+$/i 

See it

[a-z0-9]+$は、文字列が英数字のみで構成されることを確実にします。

否定先読み(?![0-9]+$)は、文字列は、すべての数値ではありません保証します。文字列が数字のみが含まれている場合は、文字列の残りの部分をチェックしていない場合

0

ソリューションは、最初のチェックになります。次の正規表現はそれを行うだろう:

^(?![\d]+$)[a-z0-9]+$ 

は、ここでは、アクションでそれを参照してください。http://regexr.com?2v8n5

関連する問題