gpt4 book ai didi

javascript - 不允许某些特殊字符的正则表达式

转载 作者:行者123 更新时间:2023-11-30 13:32:09 25 4
gpt4 key购买 nike

我想写一个正则表达式来允许字母数字值和特殊字符,除了这里提到的'`','^','=','"','<','>','|'我对此很陌生,并没有真正了解如何去做。我正在尝试如下所示:

function dbaNameCheck(input, regex) 
{
if (regex && input.value.length > 0)
{
if(regex.match(/dbaNameCheck/i) && input.value.match(/[0-9A-Za-z]|[\`\^\=\"\<\>\|]*/g))
{
input.value = input.value.replace(/[\`\^\=\"\<\>\|]*/g, '');
input.focus();
}
}
}

我在按键事件中这样调用这个函数:

onkeypress="dbaNameCheck(this,'dbaNameCheck');"

但它没有按预期工作。我的文本框中的值可以是字母数字和除上述字符之外的任何特殊字符。有人可以帮我解决这个问题吗?

最佳答案

像这样重写你的函数:

function dbaNameCheck(input) 
{
var re = /[`\^="<>|]+/g;

if (input.value.length > 0 && re.test(input.value))
{
input.value = input.value.replace(re, '');
input.focus();
}
}

然后这样调用:

onkeyup="dbaNameCheck(this);"

onKeyup 是您要捕获的事件,而不是 onKeypress。

关于javascript - 不允许某些特殊字符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6340491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com