我在当前的Web应用程序中确实具有以下RegExp。
function myCyrillicDigitsAndSpaceValidator(text){
return XRegExp("^[\\p{Cyrillic}0-9]+").test(text);
}
如您所见,我使用XRegExp javasciprt库。当前,此regxep检查其西里尔字母+空格+数字。我想扩展它并检查:
XregxExp version is 2.0.0 if it does matter
正确的例子:
1 Май
-
Май 25\5
最佳答案
为此,您可以尝试使用正向前行。考虑以下正则表达式模式:
^(?=.* )
(?=.*\d)
(?=.*[-!$%^&*()_+|~=`{}\[\]:";'<>?,.\/])
(?=.*[\p{Cyrillic}])
[ \d-!$%^&*()_+|~=`{}\[\]:";'<>?,.\/\p{Cyrillic}]+
$
这断言,输入中都出现了空格,数字,符号和西里尔字母。然后,它匹配这四个字符类别中的一个或多个。
您更新的代码:
function myCyrillicDigitsAndSpaceValidator(text){
return XRegExp("^(?=.* )(?=.*\\d)(?=.*[-!$%^&*()_+|~=`{}\\[\\]:\";'<>?,.\\/])(?=.*[\\p{Cyrillic}])[ \\d-!$%^&*()_+|~=`{}\\[\\]:\";'<>?,.\\/\\p{Cyrillic}]+$").test(text);
}
关于javascript - 正则表达式,用于匹配西里尔字母,数字,空格和一些特殊字符(-\,:,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56231604/