2017-04-04 156 views
1

我試圖做出會正則表達式匹配重複的字符串

  • 匹配字符串是否完全構造從一組字符串的字符串正則表達式。
  • 如果有其他字符串,則不匹配。爲一組字符串是[ 'XYZ', 'A', 'B']

例子:

  • 'xyzab' ==真
  • 'xyzxyzabbb' ==真
  • 'AAABB' ==真
  • '' ==真
  • 'd' ==假
  • 'aabbbbd' ==假
  • 'ZXY' ==假

我URL匹配:/

+2

用途:'^(?: XYZ | [AB])* $' – anubhava

回答

1

你可以試試這個正則表達式:^(?:xyz|[ab])*$

var regex = new RegExp('^(?:xyz|[ab])*$'); 
 
var input = ['xyzab', 'xyzxyzabbb', 'aaabb', '', 'd', 'aabbbbd', 'zxy']; 
 

 
for (var i = 0, l = input.length; i < l; i++) { 
 
    console.log(input[i], '->', regex.test(input[i])); 
 
}

1

給定一組字符串{ 「STR1」, 「STR2」,......, 「STRN」},寫正則表達式爲如下:

^(str1|str2|...|strN)*$ 

  • ^的字符串開始處匹配
  • (...)匹配任何字符串的
  • *意味着,一個上面可以從0重複無限次
  • $字符串的結尾匹配