字符串中的所有字符必须匹配正则表达式
All characters in a string must match regex
我很抱歉,如果这已经出现了,但我在谷歌上找不到任何东西,给我想要的
我有一个字段,你可以写表达式:x>1
, x>2||x<1
, (x>1) && (x<2)
等。我想要的是一个检查表达式的正则表达式,因此它只能包含某些有效字符,以防止代码注入。a.1
不匹配
到目前为止,我使用的是:
expression.match('[xX<>=|0-9&().]')
但是这也返回任何包含这些字符的内容。我想要的是一个表达式,只有当所有字符匹配正则表达式中的任何字符时才返回。
在字符类和锚之后需要*
或+
量词:
/^[xX<>=|0-9&()'s.]*$/.test(expression)
^ ^^
现在,它将匹配
-
^
-字符串 起始 -
[xX<>=|0-9&'s().]*
- 0个或多个(如果您使用+
,一个或多个)在char类 中定义的字符 -
$
- end of string.
简短的演示:
console.log(/^[xX<>=|0-9&'s().]*$/.test("a.1"));
console.log(/^[xX<>=|0-9&'s().]*$/.test("(x>1) && (x<2)"));
注意我也添加了's
来匹配空白
相关文章:
- 不同浏览器中的空白字符正则表达式行为
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 用于匹配不带字符的单词的正则表达式
- 使用正则表达式匹配长度为六个字符的字母数字字符串
- 正则表达式搜索一个空格,后跟一个字符
- 为什么这个正则表达式不't匹配最后一个字母数字字符
- 在字符串列表中搜索任何出现的单词,如果单词的第一个字符匹配,则高亮匹配单词.Javascript正则表达式
- javascript正则表达式来识别所有特殊字符
- Javascript-正则表达式,用于在未转义字符上拆分字符串,例如|,但忽略|
- 如何使用正则表达式限制字符串的第一个字符
- 为什么以下正则表达式不删除 ## 字符
- 模仿负查找以匹配JavaScript正则表达式中没有紧跟特定字符的模式
- 匹配某个字符后所有文本的正则表达式是什么
- Javascript中的正则表达式,用于只有数字的字符串,并且不应在除数字以外的任何位置包含任何字符
- Javascript 正则表达式字符范围 A-z 匹配插入符号 (“^”)
- 为什么在正则表达式字符可选时找不到匹配项
- 我什么时候需要转义正则表达式字符集中的字符(在 [] 内)
- Javascript正则表达式字符匹配
- 字符串用正则表达式替换正则表达式字符类
- 正则表达式字符识别