gpt4 book ai didi

javascript - Jquery/Regex 不适用于 val/var?

转载 作者:行者123 更新时间:2023-11-30 07:58:58 26 4
gpt4 key购买 nike

我做错了什么,这是肯定的 :-) 我检查了 https://regex101.com/检查正则表达式是否正确并且找不到任何问题。此外,我对 jQuery/JavaScript 还很陌生,但控制台没有触发任何语法错误等。

我测试了将“Goedemorgen”替换为“Goodmorning”的代码。 工作正常 所以我猜错误出在替换/正则表达式中?我不知道!任何帮助将不胜感激。

$( document ).ready(function() {

$(".wpcf7-number").focusout(function() {

var InputVal = $('.wpcf7-number').val();
var InputValNew = InputVal.replace(/^[0-9]*$/g,'');

console.log(InputValNew + ' New Var');

});

});

我希望得到的输出:033-2245-22455 至:033224522455(因此没有 -)。

别苛刻,我还在学习!

最佳答案

您想删除所有不是数字的字符。

您需要将 ^ 移动到字符类中(在开头),以便它否定范围的含义,并删除量词和 anchor 。

var InputValNew = InputVal.replace(/[^0-9]/g,'');

这是 regex101.com demo

您的正则表达式 - /^[0-9]*$/g - 匹配整个字符串,该字符串为空或仅包含数字。 ^这里是字符串 anchor 的开始,$是字符串 anchor 的结尾。 * 表示 *0 次或多次出现。所以,/g 全局修饰符是没有意义的:如果你传递 1 个字符串并想完全匹配它,你不能有多个匹配。

还有 \D 类匹配任何非数字字符。它是JS中[^\d][^0-9]的绝对同义词。

关于javascript - Jquery/Regex 不适用于 val/var?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32885693/

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