javascript - 在 JavaScript 中为特殊字符编写正则表达式

标签 javascript regex

我知道我的代码是错误的,我正在尝试测试某些字符,只要输入字段中的每个字符都存在它们,它就会通过 true,否则通过 false。

function isChar(value) {
    //Trying to create a regex that allows only Letters, Numbers, and the following special characters    @ . - ( ) # _   

    if (!value.toString().match(/@.-()#_$/)) {              
        return false;
    } return true;
}

最佳答案

假设您实际上正在传递一个字符(您没有显示如何调用它),这应该可以工作:

function isChar(value) {
  if (!value.toString().match(/[a-z0-9@.\-()#_\$]/i)) {
    return false;
  } else
    return true;
}

console.log(isChar('%'));   // false
console.log(isChar('$'));   // true
console.log(isChar('a'));   // true

如果您传递一个字符串,并且想知道字符串中的所有字符是否都在这个“特殊”列表中,您将需要这样:

function isChar(value) {
  if (! value.match(/^[a-z0-9@.\-()#_\$]*$/i)) {
    return false;
  } else
    return true;
}

console.log(isChar("%$_")); // false
console.log(isChar("a$_")); // true

关于javascript - 在 JavaScript 中为特殊字符编写正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33134929/

相关文章:

sql - 如何仅在 VARCHAR2 列中允许字母 (Oracle SQL)

javascript - 帮助使用正则表达式从括号内提取值

php - 如何将英制长度单位转换为公制?

javascript - 我怎样才能在 extjs 中用黄色突出显示必填字段

Javascript setInterval 不必要的暂停

javascript - 如何将数据从组件传递到包含数组的 .ts 文件?

Javascript 在 Internet Explorer 上只运行一次,当开发者工具打开时运行正常

javascript - 在 CSS 更改时更改 JS

javascript - 如何替换 RegExp 捕获组?

java - 是否可以使用 java 正则表达式搜索 PDF 或 Word 文档中的文本?