如何为输入值编写正则表达式? [关闭]

Posted

技术标签:

【中文标题】如何为输入值编写正则表达式? [关闭]【英文标题】:How to write Regex for input values? [closed] 【发布时间】:2013-07-14 11:02:43 【问题描述】:

我可以使用什么正则表达式来解析字符串,使其只接受整数和/ 字符?

【问题讨论】:

在要求快速回复之前,您应该尝试一下。 你已经尝试了什么? *** 是为您提供帮助,而不是为您编写代码。 上一篇文章部分解决了您的问题,希望对您有所帮助***.com/questions/9043551/regex-match-integer-only 【参考方案1】:
var a = '123/4';
var b = 'e123/4';

变体 1

var regex = new RegExp('^[0-9/]+$');

console.log((a.match(regex)) ? true : false); // true
console.log((b.match(regex)) ? true : false); // false

变体 2

var regex = /^[0-9/]+$/;

console.log((a.match(regex)) ? true : false); // true
console.log((b.match(regex)) ? true : false); // false

变体 3

var regex = /^[\d\/]+$/;

console.log((a.match(regex)) ? true : false); // true
console.log((b.match(regex)) ? true : false); // false

【讨论】:

为什么不var regex = /^[0-9/]+$/; 我只是习惯了这样写。不过应该没什么区别吧? 顺便说一句,您也可以将正则表达式写为/^[\d\/]+$/ 我认为使用构造函数的效率应该会稍低一些,因为你需要创建一个字符串对象并且有另一个函数调用的开销。另外,当您使用转义时,语法变得更加丑陋(因为您需要将所有反斜杠加倍)。我只会将构造函数用于动态创建(连接)模式。

以上是关于如何为输入值编写正则表达式? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何为URL编写正则表达式

如何用星号分割值并使用正则表达式获取第一个数字[关闭]

如何为 sed 创建一个简单的正则表达式?

包含的 JQuery 验证正则表达式

jQuery validate:如何为正则表达式验证添加规则?

如何为提及和主题标签修复此正则表达式?