首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何编写与除数字以外的任何内容匹配的正则表达式

如何编写与除数字以外的任何内容匹配的正则表达式
EN

Stack Overflow用户
提问于 2018-04-30 09:44:26
回答 2查看 65关注 0票数 0

我正在尝试创建一个角指令,以便与HTML输入一起使用,以筛选出任何数字字符。

以下是我用来实现这一目标的准则:

inputValue.replace(/[^0-9\-\.]/g, "").replace(/\.(\.)/g, '$1');

然而,这个regex不包括这些情况:

  • --5
  • 5.5.6
  • -5-5
EN

回答 2

Stack Overflow用户

发布于 2018-04-30 09:59:45

如果我没有错,这真的很简单。^^

代码语言:javascript
复制
\d

\d处理[0-9]中的每一个数字。您可以在RegEx上很简单地测试我们的https://regex101.com,而无需编写任何javascript代码来测试它。

编辑:

您可能需要向*添加一个\d

代码语言:javascript
复制
\d*

*是贪婪的选择器,它选择以前的所有类型。

票数 0
EN

Stack Overflow用户

发布于 2018-04-30 13:53:25

在正则表达式中,您使用了一个否定字符类[^0-9\-\.],它不匹配数字0-9、-.,因此保留这些匹配。

如果只想匹配一个数字,可以使用[^0-9]\D来匹配任何不是数字的字符,并将其替换为空值。

代码语言:javascript
复制
let inputValue = `--5
5.5.6
-5-5
!@#$%# $%@% $%435 452545`;
inputValue = inputValue.replace(/\D/g, "");
console.log(inputValue);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50097893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档