在某个索引之后查找字符的索引
Find indexOf character after certain index
非常基本,但恐怕我忽略了一个简单的解决方案。我有以下字符串... IBAN: NL56INGB06716xxxxx ...
我需要帐号,所以我正在寻找indexOf("IBAN: ")
但现在我需要找到该索引之后的下一个空格/空格字符。
真的不认为我需要一个循环,但这是我能想到的最好的。正则表达式捕获组可能更好?我该怎么做?
来自MDN String.prototype.indexOf
注
str.indexOf(searchValue[, fromIndex])
fromIndex
自选。调用字符串中要从中开始搜索的位置。它可以是任何整数。默认值为0
。
:注: .indexOf
只会查找特定的子字符串,如果您想从许多字符中找到选择,则需要循环和比较或使用 RegExp
优雅的例子
var haystack = 'foo_ _IBAN: Bar _ _';
var needle = 'IBAN: ',
i = haystack.indexOf(needle),
j;
if (i === -1) {
// no match, do something special
console.warn('One cannot simply find a needle in a haystack');
}
j = haystack.indexOf(' ', i + needle.length);
// now we have both matches, we can do something fancy
if (j === -1) {
j = haystack.length; // no match, set to end?
}
haystack.slice(i + needle.length, j); // "Bar"
虽然你可以按照保罗的建议传递起始索引,但似乎一个简单的正则表达式可能更容易。
var re = /IBAN:'s*('S+)/
捕获组将在IBAN:
之后保存非空格字符序列
var match = re.exec(my_str)
if (match) {
console.log(match[1]);
}
相关文章:
- 到UpperCase字符串Javascript中的特定字符索引
- 用类javascript包装span标记中字符串中的字符索引
- 从文件中字符的索引中获取行号
- js字符串中字符的索引;对某些字符串不起作用
- 获取字符串中用于插值的字符索引
- Javascript索引字符的特定实例
- 为什么这是 for 循环返回字符的索引而不是整个属性
- 带有字符索引检查的速记
- 如何使用javascript从包含数值的字符串中获取第一个字符的索引
- 在某个索引之后查找字符的索引
- 获取索引处字符的 ANSI 颜色
- 特殊字符的javascript验证's索引/位置
- 函数,该函数返回数组JavaScript中的素数索引字符
- 查找一个字符的索引- JavaScript
- 如何用特定索引的引用替换字符串的所有字符
- 字符插入错误的字符串索引
- 我如何做一个简单的字符切换从使用索引
- 什么是最短最神秘的方式来写这个索引检查多个字符
- 当字符匹配模式时从数组返回索引
- 在JavaScript中计算特定索引前的字符数