gpt4 book ai didi

javascript - 如何在正则表达式中允许空格

转载 作者:行者123 更新时间:2023-11-28 02:38:55 25 4
gpt4 key购买 nike

我有一个正则表达式,它只允许在文本框中输入整数和 float 。正则表达式代码:-

("^[0-9]*(?:[.][0-9]*|)$");

但是当用户在输入值的开头和结尾输入空格时,会出现错误。我希望用户在开头和结尾允许空格作为可选,因此我更改了正则表达式,如下所示,但它不起作用。

注意:空格可以是空格或制表符。

测试用例:用户可能输入:

"10","10.23"," 10","10 "," 10.23","10.23 "

允许任意数量的空格。

("^(?:\s)*[0-9]*(?:[.][0-9]*|)$")

我是正则表达式的新手,因此我们将不胜感激任何帮助。

谢谢。

最佳答案

试试这个:

/^\s*[0-9]*(?:[.][0-9]*|)\s*$/;

您不必将单个实体包装在一个组中来重复它,并且我在末尾添加了第二个零个或多个空格,这是您为了使其工作而缺少的。

注意:您还没有发布用于创建 RegExp 对象的代码,但如果它是 new RegExp(string),请记住转义反斜杠(通过将它们加倍):

var r = new RegExp("^\\s*[0-9]*(?:[.][0-9]*|)\\s*$");
<小时/>

此外,正如 @Blender 所建议的,这可以简化为:

/^\s*[0-9]*(?:\.[0-9]*)?\s*$/;

或者,使用 \d 代替 [0-9]:

/^\s*\d*(?:\.\d*)?\s*$/;

关于javascript - 如何在正则表达式中允许空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12967725/

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