javascript匹配字符串开头“和结束”;还有什么介于两者之间

时间:2014-09-10 04:28:53

标签: javascript regex

知道如何使用jaascipt匹配一个模式:

var pattern = somePattern

    if (!pattern.test(email)) { //do something }

但如果我必须将字符串开头与&#34匹配怎么办?并以#34;结束;以及具有特定长度的任何东西(10)所以如果我有这个:

"ww#="$==xx"; (acceptable)
"w#="$==xx"; (Not acceptable, the length is 9 between the " and the ";)
ww#="$==xx"; (Not acceptable), doesn't start with "
"ww#="$==xx" (Not acceptable), doesn't end with ";

如何使用js实现此目的?

3 个答案:

答案 0 :(得分:1)

使用.{10}来匹配10个字符。

^".{10}";$

DEMO

答案 1 :(得分:1)

如果你想要一个除了正则表达式之外的解决方案,那么以下函数也可以测试传递的字符串是否符合你的标准..

function matchString(str){
    var result = "InCorrect";
    if(str.length != 13)
        result = "InCorrect";
    else{
        if(str[0] == '"' && str[str.length-1] == ';' && str[str.length-2] == '"')
            result = "Correct";
    }

    return result;
}

<强> Fiddle

答案 2 :(得分:0)

(?=^".{10}";$)^".*";$

您可以使用正向前瞻来检查长度。参见演示。

http://regex101.com/r/oC9iD0/1