问题是当我尝试测试它时,它总是返回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