Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript match()字符串字母,在match的正则表达式上指示_Javascript_String_Function_Match - Fatal编程技术网

Javascript match()字符串字母,在match的正则表达式上指示

Javascript match()字符串字母,在match的正则表达式上指示,javascript,string,function,match,Javascript,String,Function,Match,我有一个包含字符串的变量,我只想返回正则表达式中的字母(“b”和“D”)或match()中正则表达式中指示的任何字母 我的问题是,我认为正则表达式返回b和D,但索引不是来自kk变量的索引,我不确定,为什么。。。因此,如果有人能帮我一点忙,因为我卡住了javascript中的match方法只返回一个具有给定匹配项的数组: 您需要实现一个新函数,该函数将循环遍历字符串的所有字符,并返回给定的匹配索引。 此方法可以使用函数searchfrom String.prototype:javascript中

我有一个包含字符串的变量,我只想返回正则表达式中的字母(“b”“D”)或match()中正则表达式中指示的任何字母


我的问题是,我认为正则表达式返回b和D,但索引不是来自
kk
变量的索引,我不确定,为什么。。。因此,如果有人能帮我一点忙,因为我卡住了

javascript中的
match
方法只返回一个具有给定匹配项的数组:

您需要实现一个新函数,该函数将循环遍历字符串的所有字符,并返回给定的匹配索引。
此方法可以使用函数
search
from String.prototype:

javascript中的
match
方法仅返回具有给定匹配项的数组:

您需要实现一个新函数,该函数将循环遍历字符串的所有字符,并返回给定的匹配索引。
此方法可以使用函数
从字符串中搜索
。原型:

您必须编写一个新函数来获取匹配正则表达式的索引,如下面的示例所示:-

var re = /bar/g,
  str = "foobarfoobar";
while ((match = re.exec(str)) != null) {
  alert("match found at " + match.index);
}

希望这将帮助您

您必须编写一个新函数来获取匹配正则表达式的索引,如下面的示例所示:-

var re = /bar/g,
  str = "foobarfoobar";
while ((match = re.exec(str)) != null) {
  alert("match found at " + match.index);
}

希望这能帮助你

事实上这就是答案:

var kk = "AaBbCcDd".match(/B?d?/g); 
     kk.forEach(function(value,index){
     console.log(value,index) 
});
如果有人会遇到这种情况


match()
正则表达式
B?d?
将返回一个数组,指示初始数组kk的
“B”
“d”
的位置。

实际上这就是答案:

var kk = "AaBbCcDd".match(/B?d?/g); 
     kk.forEach(function(value,index){
     console.log(value,index) 
});
如果有人会遇到这种情况


match()
regular expression
B?d?
将返回一个数组,指示初始数组kk的
“B”
“d”
的位置。

“AaBbCcDd”.match(/B | d/g)
将返回
[“b”,“D”]
,因此索引将为0和1。您期望的是什么?但是索引不是来自kk变量的索引-它意味着什么?初始数组的索引kk@RomanPerekhrest这意味着在kk变量中,指数为:A-0、A-1、B-2、B-3、C-4、C-5、D-6、D-7
var str=“AaBbCcDd”
kk.forEach(函数(值,索引){console.log(值,str.indexOf(值));})
“AaBbCcDd”。匹配(/b | D/g)
将返回
[“b”,“D”]
,因此索引将为0和1。您期望的是什么?但是索引不是来自kk变量的索引-它意味着什么?初始数组的索引kk@RomanPerekhrest这意味着在kk变量中,指数为:A-0、A-1、B-2、B-3、C-4、C-5、D-6、D-7
var str=“AaBbCcDd”
kk.forEach(函数(值,索引){console.log(值,str.indexOf(值));})将始终返回“bar”的位置,但如果要返回“bar”的位置和“foo”的位置,您将如何执行此操作?因为这正是我需要的场景。只要尝试添加正则表达式,它就会返回两个匹配项的索引……在函数中,它将始终返回“bar”的位置,但如果要返回“bar”的位置和“foo”的位置,您将如何做?因为这就是我需要的场景。只要尝试添加您的正则表达式,它就会返回两个匹配项的索引。。。