javascript - 如何使用 REGEX 找到字符的一个实例?

标签 javascript regex

我有一个输入字段,它应该只接受货币语法中使用的字符(美元符号、数字、逗号和小数)。我如何编写我的正则表达式来检查一个字符串是否包含至少一个不是来自上面列出的字符的字符?

我试过以下方法,但这个表达式的问题是,如果字符串中存在一个有效字符,它会抛出“else”语句。 (unitPriceVal 是用户输入的字符串)

我想编写一个正则表达式来检查整个字符串是否包含有效货币,如果为真则运行 else 语句

validCurrency = /([0-9\$.,])/;

if (!unitPriceVal.match(validCurrency) || unitPriceVal == "") {
                        unitPrice.setValueState("Error");
                    } else {
                        unitPrice.setValueState("None");
                    }
                }, 

最佳答案

I want to write a regex that checks if the WHOLE string consists of the valid Currency

要检查整个字符串,使用 ^$ 将匹配锚定到输入的开头和结尾,并确保中间的是一个序列 ( +) 允许的字符数:

/^[\d$.,]+$/;

你不需要括号。您也不需要转义字符集中的 $ 。最后,您可以使用 \d 作为数字。

通常,最好使用 input 元素的 pattern 属性来执行此检查。在这种情况下,您不需要 anchor (它们是隐含的):

<input pattern="[\d$.,]+">

关于javascript - 如何使用 REGEX 找到字符的一个实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40646153/

相关文章:

c# - 编译替换正则表达式

regex - 从右侧删除零并在数字左侧添加一些?

javascript - 使用正则表达式获取函数内容

javascript - react : Cannot read property 'times' of undefined Although "times" is defined?

JavaScript 测试 CSS 样式表是否与 CSS3 媒体查询一起应用

javascript - 如何使用 Canvas 调整图像大小然后裁剪图像

javascript - 运行脚本以打开另一个脚本文件

c# - 用于检索 CSS url 函数参数的正则表达式

php - 如何使 RegEx 匹配 CSS 非贪婪的部分匹配

用于登录 Windows 应用商店应用程序站点的 Javascript