2016-05-01 16 views
-2

私はReg Exを複製しようとしています。しかし、私のコードは、私が渡した値に関係なく常に真実を与えています..以下のReg Expressionで何が問題になりますか?

これは正確に何を説明することができます...

var re = new RegExp("([a-zA-Z0-9-`.'_]?)+"); 
 

 
if(re.test('valueFromHtml'){ 
 
\t console.log("valid"); 
 
}else{ 
 
    console.log("invalid"); 
 
}

+0

[参考 - この正規表現は何を意味するのですか?](http://stackoverflow.com/questions/22937618/reference-what-does-this-regex-mean) - [RegEx101](https://regex101.com/#javascript)? – Xufox

答えて

2
var re = new RegExp("([a-zA-Z0-9-`.'_]?)+"); 

あなたの正規表現は、「1つの文字以上のこの特定のセットのメンバーの発生、または文字なし」を意味します。したがって、パターンは可能なテスト文字列の一部であるゼロ文字の空の文字列と一致します。

関連する問題