Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Js,如何忽略在文本框中贡献文本长度的符号?_Javascript_Html - Fatal编程技术网

Javascript Js,如何忽略在文本框中贡献文本长度的符号?

Javascript Js,如何忽略在文本框中贡献文本长度的符号?,javascript,html,Javascript,Html,我的目标是统计文本框中不是符号的文本。例如,如果用户键入email\u ex\u 3/2@mail.com文本的原始长度为21,但我的目标是忽略这些符号,使长度变为16 我所能想到的就是使用for循环来检查这些符号,但我认为这非常可怕 JS function test() { alert(document.getElementById("firstText").value.length); } HTML <input type="text" id="firstText" />

我的目标是统计文本框中不是符号的文本。例如,如果用户键入
email\u ex\u 3/2@mail.com
文本的原始长度为21,但我的目标是忽略这些符号,使长度变为16

我所能想到的就是使用for循环来检查这些符号,但我认为这非常可怕

JS

function test() {
    alert(document.getElementById("firstText").value.length);
}
HTML

<input type="text" id="firstText" />
<button onclick="test()">Submit</button>

提交

您可以使用正则表达式将所有非单词字符替换为空字符串,并检查结果的长度:

const getLen=str=>str.replace(/[^A-Za-z0-9]/g')。长度;

控制台日志(getLen('email_exu_3/2@mail.com'));
您可以使用正则表达式
将所有非单词字符替换为空字符串,并检查结果的
长度

const getLen=str=>str.replace(/[^A-Za-z0-9]/g')。长度;

控制台日志(getLen('email_exu_3/2@mail.com'));
通过将正则表达式作为第二个参数传递,可以使用
replace
方法

功能测试(){
警报(document.getElementById(“firstText”).value.replace(/[^a-zA-Z 0-9]+//g,”).length);
}


Submit
通过将正则表达式作为第二个参数传递,可以使用
replace
方法

功能测试(){
警报(document.getElementById(“firstText”).value.replace(/[^a-zA-Z 0-9]+//g,”).length);
}

提交
您可以这样做

function test()
{

alert(document.getElementById("firstText").value.replace(/[\W_]+/g, "").length);
}
(/[\W_])排除所有非字母数字字符和/g表示所有

您可以这样做

function test()
{

alert(document.getElementById("firstText").value.replace(/[\W_]+/g, "").length);
}

(/[\W_])排除所有非字母数字字符和/g来表示所有

那么您想计算字母数字字符吗?只计算单词和数字,所以您需要将(/[^A-Za-z0-9]/g,”)
放在
的前面。长度
。哦,天哪,这很好用!有没有关于你提到的这个字符
/[^A-Za-z0-9]/g
的文档?那么你想数一数字母数字字符吗?只数一数单词和数字,所以你要把
放进去。在
前面替换(/[^A-Za-z0-9]/g,”)
。长度
。哦,天哪,这很好用!有没有关于你提到的这个字符
/[^A-Za-z0-9]/g
的文档?这个答案也有效,有没有关于你提到的这个字符
/[^A-z0-9]/gi
的文档?这个答案也有效,有没有关于这个字符
/[^A-z0-9]的文档/gi
你也提到了这些作品,但我正在寻找一个更简单的version@learnprogramming,simples版本将使用
replace
方法。这同样有效,但我正在寻找一种更简单的方法version@learnprogramming,simples版本将使用
replace
方法。