我的正则表达式出了什么问题?

时间:2013-11-11 11:19:25

标签: javascript regex asp.net-mvc

我想查看我的fileName,可以是2013_09_北京.doc2013_09_广东_1.doc2013_09_中国人_anywords.doc,但我发现2013_09_北京.doc已选中,但2013_09_广东_1.doc似乎错了,我的代码出了什么问题?

 // fileName='2013_09_北京.doc';// right
 fileName='2013_09_北京_1.doc';// wrong
var patt1 = new RegExp("^2013_(0[1-9]|1[0-2])_([\\u4e00-\\u9fa5]{2,3})(_[\S]*)?\.(doc)$");
        if (!patt1.test(fileName)) {
         alert('input format like 2013_09_北京.doc或2013_09_北京_1.doc’);
        }
        else
        alert('right format!');

1 个答案:

答案 0 :(得分:2)

你没有逃脱\ S和\。在你的字符串中,这应该修复它:

var patt1 = new RegExp("^2013_(0[1-9]|1[0-2])_([\\u4e00-\\u9fa5]{2,3})(_[\\S]*)?\\.(doc)$");