我知道如何找到预定义字符的第一次出现,如a.indexOf("R")
,但是如果你想找到任何字符AZ的第一次出现怎么办,比如我的字符串包含数字和其他特殊字符而我我只对“正常”字母感兴趣吗?
答案 0 :(得分:0)
使用正则表达式:
a.match(/[A-Za-z]/);
答案 1 :(得分:0)
使用正则表达式。
var a = " $#714 Abcd";
answer = a.match(/[A-Za-z]/)[0]
console.log(answer); // 'A'
答案 2 :(得分:0)
您可以使用正则表达式来匹配此表达式:
a.match(/^[A-Za-z][A-Za-z0-9]*$/)
这将检查第一个字符是否为字母,然后其余字母为字母数字
答案 3 :(得分:0)
此函数将返回一个数组,其中包含字符串中所有第一次出现的任何字母的位置:
var s = 'asdlkn akn dlkandl nl ndvds';
function getFirstOccurrenceOffset(s) {
s = s.split("").reverse().join(""); // reverse the string
var re = /([A-Z])(?!.*\1)/gi;
var m;
var result = Array();
while ((m = re.exec(s)) !== null)
result.push(s.length - m.index - 1);
return result.reverse();
}
console.log(getFirstOccurrenceOffset(s));
该函数不区分大小写,但您可以删除i修饰符以使其区分大小写。