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

在regex中匹配特殊字符和字母

杜阳泽
2023-03-14

我试图验证一个字符串,它应该只包含字母、数字和特殊字符&._。为此,我尝试使用正则表达式。

var pattern = /[a-zA-Z0-9&_\.-]/
var qry = 'abc&*';
if(qry.match(pattern)) {
    alert('valid');
}
else{
    alert('invalid');
}

在使用上述代码时,字符串abc&*是有效的。但我的要求是出示这个无效。ie每当出现字母、数字或特殊字符以外的字符&-._时,字符串的计算结果应为无效。如何使用regex实现这一点?

共有1个答案

郎仰岳
2023-03-14

将它们添加到允许的字符中,但您需要转义其中的一些字符,如-]/\

var pattern = /^[a-zA-Z0-9!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]*$/

这样,您就可以删除任何希望禁用的单个字符。

此外,您还希望包含字符串placemarkers^和$的开始和结束

/^[\w&.\-]+$/
/^[\w&.\-]*$/
 类似资料:
  • 我正在使用Apache FOP,并且已经看到:XSL-在XSL:when测试期间转义撇号,用于在XSL:when测试期间转义字符。 但是,我在使用xsl:模板匹配执行相同的等价测试时遇到问题 示例XML 样品XSL PDF格式输出: 当测试成功而模板匹配失败时,xsl: 如果有人能给我指出正确的方向或者告诉我我做错了什么,我会非常感激的。 非常感谢

  • 问题内容: 我正在为法国客户做一些工作,因此需要处理带重音符号的字符。但是我遇到了很多困难,希望解决方案很简单,并且有人可以向我指出。 字符串: 转换为: 请注意,带重音符号的字符缺失- 在 ê* 后面紧跟着 t ,在 é 后面紧跟着 m 。 * 我尝试使用StringEscapeUtils来成功转义某些字符,例如 ă 。我还构建了自己的转义功能,该功能产生相同的结果( ă 可以工作, ê 不会)

  • 问题内容: 我的解析器有问题。我想阅读网站上的图片链接,这通常可以正常工作。但是今天,我得到了一个包含特殊字符的链接,而常规的正则表达式不起作用。 这就是我的代码的样子。 这是html的一部分,会引起麻烦 这是我用来获取src属性部分的正则表达式: 我认为这与链接内的所有特殊字符有关。但是我不确定如何逃避所有这些。我已经尝试过 但是结果是一样的:没有发现任何东西。 问题答案: 该字符通常只匹配换行

  • 关于字符集和替代字形 除键盘上可看到的字符之外,字体中还包括许多字符。根据字体的不同,这些字符可能包括连字、分数字、花饰字、装饰字、序数字、标题和文体替代字、上标和下标字符、变高数字和全高数字。字形是特殊形式的字符。例如,在某些字体中,大写字母 A 有几种形式可用,如花饰字或小型大写字母。 插入替代字形的方式有两种: 可以使用 “字形 ”面板来查看和插入任何字体中的字形。 可以使用 “OpenTy

  • 一些字符在 XML 中有特殊的含义,只能够通过其实体名称输入 字符 写法 缩写涵义 < &lt; less than > &gt; greater than & &amp; ampersand " &quot; quote ' &apos; apostrophe 空格 &nbsp; none-break space 通常需要使用实体输入的字符包括<、&、空格   XML 会将任意数量的空格解析为一