2017-07-27 26 views
0

文字列中に特定の部分文字列が存在するかどうか調べたいと思います。文字列内に複数の部分文字列を見つけるためのjge正規表現

私が試してみましたこの:

x = "AAABBBCCC" 
x.match(/(AAA|CCC)/) 

は、しかし、これはresurns:Array [ "AAA", "AAA" ]

私は正確に存在していた部分文字列(例えばArray [ "AAA", "CCC" ]

はこれが可能である知っていただきたいと思いますか?

答えて

3

これで、1つの値を持つキャプチャグループが1つしかなくても、それが見つかると返されます。

あなたはそれはRegexするグローバルフラグを追加した場合は、すべての結果

を返し
x.match(/(AAA|CCC)/g) 

- > [ "AAA"、 "CCC"]を見つけたときにグローバルマッチのため

0

チェックが、それ以外の場合は解除されます

x = "AAABBBCCC" 
x.match(/(AAA|CCC)/g) 
0

最初のこれはあなたのパターンにgグローバルフラグを使用して可能です。同様に:

x.match(/(AAA|CCC)/g); 

これは["AAA", "CCC"]を返します。私は実際に表現を考え出すときやドキュメントとしてRegExrを使うのを楽しんでいます。

0

var regEx = new RegExp('(AAA|CCC)','g'); 
 
var sample_string="AAABBBCCC"; 
 
var result = sample_string.match(regEx); 
 
document.getElementById("demo").innerHTML = result;
<p id="demo"></p>

関連する問題