javascript - 正则表达式检查文本区域中的一些特殊字符

标签 javascript regex

嗨,我一直在尝试检查是否有?或 * 出现在文本区域但无法获取计数

我的尝试

if($('textarea').val().match(/\**\?*/).length){
   //do something
   console.log("* or ? not allowed");
}

测试用例

some word ????? ***** 
some*****
"*" "?"
"?"

“*”

它必须能够检查任何可能的?或 * 出现在文本区域中。

最佳答案

使用[*?]作为模式。它匹配 *?。 (*?[...] 中失去其特殊含义并按字面​​匹配。)

使用RegExp.prototype.test ,您不需要计算匹配数。

if (/[*?]/.test($('textarea').val()) {
   // do something
   console.log("* or ? not allowed");
}
<小时/>
/[*?]/.test('hello world')   // => false
/[*?]/.test('hello * world') // => true
/[*?]/.test('hello world?')  // => true

关于javascript - 正则表达式检查文本区域中的一些特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21793704/

相关文章:

javascript - CodeMirror:如何在光标位置之前或之后阅读编辑器文本

带有表情符号的主题标签的 Javascript 正则表达式

两个字符之间和多行之间的正则表达式

python - 提取两个特殊字符之间的字母数字字符串

Java replaceAll 正则表达式使用找到的实例

javascript - 长时间后的淡入淡出过渡与其 setInterval 不同步

javascript - 从选项卡 View 屏幕导航到另一个屏幕不起作用

javascript - 如何运行通过 jquery attr 添加到 onsubmit 属性的函数

javascript - 获取页面的全部内容?

javascript - 正则表达式 url 无法识别