RegEx.Test 返回总是假的



问题是当我尝试测试它时,它总是返回false。你知道为什么吗?

$('MyInput').mouseout(function () {
    alert($('MyInput').val()); // it is  "яяqqåå"
    alert(/^[p{L}0-9s.\/-]{2,20}$/.test($('MyInput').val()));
});

这是因为Javascript正则表达式不支持p{L}

即使这样也会返回 false:

/^p{L}+/.test('a');

您可以使用此一揽子 unicode 范围来匹配输入文本:

/^[u0000-uffffds.\/-]{2,20}$/.test('яяqqåå');
//=> returns true

最新更新