如何匹配2个字母的特定组合与正则表达式

时间:2014-09-11 16:54:40

标签: javascript regex

给出这组字母

  

xx | af |一个| bf | bn | cf | CN

如果给出两个字符,它们是否可以与上述其中一个匹配?

我可以用开关盒轻松地对解决方案进行硬编码,但我认为正则表达式是一种更优雅的解决方案。

4 个答案:

答案 0 :(得分:3)

你基本上自己写了正则表达式:

xx|af|an|bf|bn|cf|cn

答案 1 :(得分:3)

如前所述,您自己编写了正则表达式,可以将其简化为...

var re = /xx|[abc][fn]/

答案 2 :(得分:1)

试试这个:

^(xx|af|an|bf|bn|cf|cn)$

xx  => Correct
af  => Correct
aff => Incorrect
kk  => Incorrect

<强> Live demo

答案 3 :(得分:0)

您可以使用此代码:

// regex to match your words
var re = /\b(xx|af|an|bf|bn|cf|cn)\b/g; 

// your text string
var str = 'as ww zx af ad we re an ana ';
var m;

while ((m = re.exec(str)) != null) {
    if (m.index === re.lastIndex) {
        re.lastIndex++;
    }
    // View your result using the m-variable.
    // eg m[0] etc.
}

<强> Working demo

enter image description here