2011-07-04 12 views
2

1つの正規表現を使用して、月または月の名前を検証しようとしています。Rexeg月の名前と番号を排他的に組み合わせる

私は2つのチェック

/^ 
0?([1-9]|1[012])     ---number check 0?1-12 
|\b(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May?|Jun(?:e)?|Jul(?:y)?|Aug(?:ust)?|Sep(?:tember)?|Sep(?:t)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)$/  ---name check 

を持っているが、個別に任意のヘルプは感謝、正しく表現に参加していないイムイム思考を正常に動作します。あなたが交替を入れている

答えて

4

ウォッチ:

/^ 
(?:     # otherwise the^becomes part of the first alternation 
(0?[1-9]|1[012]) # number check 0?1-12 
| 
(?:    # name check 
    Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May| 
    Jun(?:e)?|Jul(?:y)?|Aug(?:ust)?|Sept?|September| 
    Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)? 
) 
) 
$/ 
+0

ニースの書式設定。これは "Sepember"と一致することに注意してください。 – Tim

+0

@Tim:まあまあです。私はそれを取り除くことができると思った: –

+1

これは、ありがとう、私は少し私はそれを使用すると正規表現で良くなってきています。ありがとうTims – Forteasics

関連する問題