私はこの単純なコードがうまくいかない理由は考えていません。私は許容されるパターンと文字列を一致させる予定です。 文字列はa-z
,A-Z
,0-9
,_
(アンダースコア)、.
(ドット)、-
(ハイフェン)のいずれかにする必要があります。以下は文字列内の特定の文字のみを許可します。 Javascript
コードです:
var profileIDPattern = /[a-zA-Z0-9_.-]./;
var str = 'Heman%t';
console.log('hemant',profileIDPattern.test(str));
コードログ「真」以下の文字列のため、これらの文字列がパターンに一致していませんが。
'Heman%t' -> true
'#Hemant$' -> true
私は何が問題なのか分かりません。
おかげで@ Arg0n、それは働いた。あなたが助けてください、これは*ここで何を意味しますか?私が間違っていないなら、^と$は文字列の開始と終了を意味します。前回このタイプの表現を試みたとき、私はそれを保持していないと思います。 –
@HemantYadav '[]]の中にある文字のうち、0個以上の文字を意味します。 '1つ以上'を望むなら、それを '+'に変更してください。あなたは '^'と '$'について正しいです。 – Arg0n
あなたのパターンに欠陥があります。それは空文字列にもマッチします。 '' '.test(str1) ' –