要阻止双引号(")、反斜杠(\)、Emoji表情、空行和空格,可以使用以下正则表达式:
^[^"\\\s\p{Emoji}]+$
^ - 匹配字符串开头[^...] - 否定字符类,匹配不在括号内的任何字符
" - 双引号\\ - 反斜杠(需要转义)\s - 任何空白字符(包括空格、制表符、换行符等)\p{Emoji} - Unicode Emoji字符+ - 匹配前面的元素一次或多次$ - 匹配字符串结尾const regex = /^[^"\\\s\p{Emoji}]+$/u;
if (!regex.test(inputString)) {
alert("输入包含非法字符");
}
import re
regex = r'^[^"\\\s\p{Emoji}]+$'
if not re.fullmatch(regex, input_string, flags=re.UNICODE):
print("输入包含非法字符")
String regex = "^[^\"\\\\\\s\\p{Emoji}]+$";
if (!inputString.matches(regex)) {
System.out.println("输入包含非法字符");
}
u标志来启用Unicode支持如果只需要阻止特定字符而不需要复杂匹配,也可以使用更简单的检查:
function isValidInput(input) {
return !/["\\\s]|\p{Emoji}/u.test(input);
}