Javascript 正则表达式没有过滤文本 功能清洁(e){ var textfield=document.getElementById(e); var regex=/[^a-z 0-9]/gi; textfield.value=textfield.value.replace(regex,“”); }

Javascript 正则表达式没有过滤文本 功能清洁(e){ var textfield=document.getElementById(e); var regex=/[^a-z 0-9]/gi; textfield.value=textfield.value.replace(regex,“”); },javascript,regex,Javascript,Regex,正如你所看到的,我的代码过滤了所有的字母字符,我希望能实时完成,但这段代码不起作用。请帮我解决这个问题 您可以通过以下操作删除所有字母(A-Za-z): 您需要将JavaScript代码保存在html中的标记中,因为当它到达onclick=“clean('ta')”时,它还没有到达函数clean的声明,因此抛出引用错误(您可以在控制台(F12)中看到)检查此项 我能做什么 修改现有正则表达式以更新此/[a-zA-Z]/gi以忽略大写字母和小写字母 这里我可以看到你的正则表达式 HTML 希

正如你所看到的,我的代码过滤了所有的字母字符,我希望能实时完成,但这段代码不起作用。请帮我解决这个问题


您可以通过以下操作删除所有字母(
A-Za-z
):

您需要将JavaScript代码保存在html中的
标记中,因为当它到达
onclick=“clean('ta')”
时,它还没有到达函数
clean
的声明,因此抛出
引用错误
(您可以在控制台(
F12
)中看到)

检查此项

我能做什么

  • 修改现有正则表达式以更新此
    /[a-zA-Z]/gi
    以忽略大写字母和小写字母

  • 这里我可以看到你的正则表达式


HTML
希望这对你有帮助

似乎很好->你到底想做什么?你想保留什么?我确实想删除所有字母->你想要一个数字吗?如果你只想要数字,删除字母表并不能保证数字。我想这就是他想要的,我正要标记这个问题
<script type="text/javascript">
function clean(e){
    var textfield = document.getElementById(e);
    var regex = /[^a-z 0-9]/gi;

    textfield.value = textfield.value.replace(regex, "");
}
</script>
<textarea id="ta" name="ta" onkeyup="clean('ta')" onkeydown="clean('ta')"></textarea>
function clean(e) {
    var textfield = document.getElementById(e);
    var regex = /[a-z]/gi;    // all alphabet characters ignorecase
    textfield.value = textfield.value.replace(regex, "");
}
<textarea id="ta" name="ta" onkeyup="clean('ta')" onkeydown="clean('ta')"></textarea>
function clean(e) {
    var textfield = document.getElementById(e);
    var regex = /[a-zA-Z]/gi;
    textfield.value = textfield.value.replace(regex, "");
}