wes*_*509 1 javascript regex string jquery
如何使用Javascript检查我的数据字符串是否以标点符号开头?我查看了Check是否字符串是一个标点字符,以及如何知道字符串在jQuery中以特定字符串开头/结尾?和其他一些人,但我不知道我哪里出错了.
这是我到目前为止的一小部分:
var punctuations = [".", ",", ":", "!", "?"];
if (d.endContext.startsWith(punctuations)) {console.log(d.endContext)
} else {console.log('false')};
Run Code Online (Sandbox Code Playgroud)
我只获得'假'回报,但如果我传入"." 在
if(d.endContext.startsWith('.'))
...
Run Code Online (Sandbox Code Playgroud)
我得到了正确的结果.我也试过了
String punctuations = ".,:;?!"
Run Code Online (Sandbox Code Playgroud)
比如检查字符串是否是建议的标点字符,但Chrome和Firefox都给了我错误消息(分别为"未捕获的语法错误:意外的标识符"和"SyntaxError:missing; before statement").看起来这个错误通常是在Javascript中编写多行字符串,我认为我不想这样做.d.endContext将打印多行字符串,但是当我传递"."时它工作正常,所以我不认为这是问题所在.
使用正则表达式要简单得多.
var str = '.abc'
var result = !!str.match(/^[.,:!?]/)
console.log(result)
Run Code Online (Sandbox Code Playgroud)
/ 表示正则表达式的开始/结束
^ 意思是'开始'
[]意思是'字符集'.它将匹配[和之间的任何字符]
另外,这个应用程序非常适合学习正则表达式! http://regexr.com/
祝你今天愉快!:d
使用some和startsWith方法。
punctuations.some(function(character) {
return string.startsWith(character)
});
Run Code Online (Sandbox Code Playgroud)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some
some() 方法测试数组中的某些元素是否通过所提供函数实现的测试。或者你也可以使用正则表达式
/[.,:!?]/.test(string.charAt(0))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3439 次 |
| 最近记录: |