当前位置: 首页 > 知识库问答 >
问题:

Javascript正则表达式字符集限制[重复]

申屠宏胜
2023-03-14

我想验证用户的输入,我使用以下(工作良好)作为regex。

 pattern = /^[a-zA-Z0-9 .,!?;-]+$/;

但当我尝试所有我想要的角色时,就是这样。

pattern = /^[a-zA-Z0-9 .,!?;-:()@'+=/]+$/;

它不起作用,我不知道为什么。此外,如果您能向我解释添加^+$有什么不同,我将不胜感激。另外,我尝试使用\s来代替空格,但仍然不起作用(我更喜欢使用空格,因为我想限制行的更改)。

共有1个答案

盖锦程
2023-03-14

“连字符减”字符-在字符集(介于[]之间的一组字符)中具有特殊的含义。它-定义了一个字符范围。大多数情况下,在希望-表示其自身的字符集中,需要使用\-来转义其特殊含义。在您的使用中,-:之间使用时,需要对\-进行转义。

工作:

pattern = /^[a-zA-Z0-9 .,!?;\-:()@'+=/]+$/;
 类似资料:
  • 问题内容: 我使用以下正则表达式而不限制任何字符长度 在上面,当我尝试将字符长度限制为如下所示的15个时,会引发错误。 请帮助我使上述regEx的字符数限制为15。 问题答案: 您不能将量词应用于锚点。相反, 要限制输入字符串的长度,请 在开头使用锚定先行: 另外,我假设您想将0个或多个字母或数字与匹配。它应该看起来像(即在此处使用字符类)。 为什么不最后使用限制量词,例如? 量词仅应用于左侧的子

  • 问题内容: 有没有办法使用正则表达式来匹配重复的字符集?例如: 我知道那是错的。但是有什么可以匹配这种效果的吗? 更新: 您可以使用嵌套捕获组吗?像什么? 问题答案: 将要重复的正则表达式放在括号中。例如,如果您要重复5次: 或者,如果您想要任意数量的重复(0或更多): 或一个或多个重复: 编辑 以回应更新 正则表达式中的括号有两个作用:它们将正则表达式中的一系列项目组合在一起,以便您可以将运算符

  • 我试图为密码字段创建一个验证,它只允许字符和 时有什么区别,以及哪些字符来自

  • 主要内容:实例下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或

  • 我的正则表达式是 当我在java中使用Pattern.complie()编译时,我得到了*非法重复字符* 我测试了这个正则表达式 当我编译这个时,它没有显示错误。 为什么会发生这种情况?

  • 我已经研究了堆栈溢出(替换字符...呃,JavaScript如何不遵循有关RegExp的Unicode标准等等),但还没有找到这个问题的具体答案: 目前,我正在讨论三种添加支持的方法中的一种,所有这些方法我都进行了测试和工作(至少在某种程度上,我不知道第二种方法的“范围”是什么)。它们在这里: 这将使姓/名与中支持的任何重音字符正确匹配。 这与任何东西都是匹配的,至少以的形式是这样的。好吧,我想.