問題是,當我嘗試測試它時,它始終返回false。你有什麼想法,爲什麼?RegEx.Test返回始終爲false
$('MyInput').mouseout(function() {
alert($('MyInput').val()); // it is "яяqqåå"
alert(/^[\p{L}0-9\s\.\\\/\-]{2,20}$/.test($('MyInput').val()));
});
問題是,當我嘗試測試它時,它始終返回false。你有什麼想法,爲什麼?RegEx.Test返回始終爲false
$('MyInput').mouseout(function() {
alert($('MyInput').val()); // it is "яяqqåå"
alert(/^[\p{L}0-9\s\.\\\/\-]{2,20}$/.test($('MyInput').val()));
});
這是因爲使用Javascript正則表達式不支持\p{L}
即使這樣返回false:
/^\p{L}+/.test('a');
您可以使用該毯的unicode範圍來匹配您的輸入文字:
/^[\u0000-\uffff\d\s.\\\/-]{2,20}$/.test('яяqqåå');
//=> returns true
那麼如何包含所有語言的所有字母?因爲從我看到\ p {L}那樣做。附:我在C#語言中使用 – user2831001
檢查更新的答案 – anubhava
是的,但我想接受所有西裏爾字母。 – user2831001
請參閱:http://stackoverflow.com/questions/280712/javascript-unicode – JotaBe
是的,但我想接受西裏爾字母。 – user2831001