2017-08-31 10 views
0

行います正規表現は、私は正規表現がない、適切なテスト

/^([\u00c0-\u01ffa-zA-Z]+['-]{0,1}){3,30}$/ 

私は3-30与えられた文字を使用できることを意味しますが、私の上限は動作しません。ここでは35文字の文字列での例です:

/^([\u00c0-\u01ffa-zA-Z]+['-]{0,1}){3,30}$/.test('TXTGWDRWHWTXTGSXYEWGUAHZXQCWDRWHWTX'); 

そして、それはtrueを返しますが、falseを返す

+0

だから、全長が終わり、オプションの引用符やダッシュで3-30文字からになりたいですか? – sln

+4

正規表現にネストされた数量子があります。 '+'は内側のサブパターンに無制限の長さを与えます。 –

答えて

0

はこれら質問の一つ一つが異なっている必要があります。
2つは同じではありません。

この1のために私は3-30文字の合計を与え、

/^[\u00c0-\u01ffa-zA-Z]{2,29}[\u00c0-\u01ffa-zA-Z'-]$/.test('TXTGWDRWHWTXTGSXYEWGUAHZXQCWDRWHWTX');

をお勧めしたいです。

console.log(/^[\u00c0-\u01ffa-zA-Z]{2,29}[\u00c0-\u01ffa-zA-Z'-]$/.test('TXTGWDRWHWTXTGSXYEWGUAHZXQCWDRWHWTX'));

出力

false