javascript - 检查字符串是否以标点符号开头(Javascript)

标签 javascript jquery regex string

如何使用 Javascript 检查我的数据字符串是否以标点符号开头?我看了Check if string is a punctuation characterHow to know that a string starts/ends with a specific string in jQuery?和其他一些人,但我不知道我要去哪里错了。

这是我到目前为止的一个片段:

      var punctuations = [".", ",", ":", "!", "?"];

      if (d.endContext.startsWith(punctuations)) {console.log(d.endContext)
      } else {console.log('false')};

我只得到“假”返回,但如果我传入“。”在

if(d.endContext.startsWith('.'))
... 

我得到了正确的结果。我也试过了

     String punctuations = ".,:;?!"

喜欢Check if string is a punctuation character建议,但 Chrome 和 Firefox 都给了我错误消息(分别为“未捕获的语法错误:意外的标识符”和“语法错误:缺少;声明之前”)。看起来这个错误通常是因为在 Javascript 中编写多行字符串,我不认为我正在尝试这样做。 d.endContext 将打印多行字符串,但当我只传递“.”时它工作正常,所以我认为这不是问题所在。

最佳答案

使用正则表达式要简单得多。

    var str = '.abc'
    var result = !!str.match(/^[.,:!?]/)
    
    console.log(result)
  • /表示正则表达式的开始/结束

  • ^ 表示“开始于”

  • [] 表示“字符集”。它将匹配 []

    之间的任何字符
  • !! 转换匹配 returns一个 bool 值。如果它返回一个匹配项,它将被转换为 true。如果返回 null,则将其转换为 false。

此外,这个应用程序非常适合学习正则表达式! http://regexr.com/

祝你有美好的一天! :D

关于javascript - 检查字符串是否以标点符号开头(Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32657021/

相关文章:

javascript - jquery获取输入框的id

jquery - 如何让 jQuery-UI 日期选择器显示在屏幕中央?

ruby-on-rails - 使用正则表达式从文件中提取环境变量

javascript - NodeJS : how to create a flag

javascript - 基本的 javascript 函数不起作用

jQuery 验证器信用卡号 + 类型匹配

javascript - 单击表格行时如何显示模式?

java - 如何绕过 "This expression is not supported in the current option setting"错误

python - 从字符串中删除除数字和小数之外的所有内容

javascript - 如何将 ↵ 替换为\n