Javascript 搜索名称字符串,并使用for循环记录每个事件的名称

Javascript 搜索名称字符串,并使用for循环记录每个事件的名称,javascript,Javascript,我目前正在制作一个小程序,它将运行一个字符串,找到与我的名字完全匹配的字符串,然后在出现我的名字时将其放入一个空数组。为了让我的for循环正常工作,我在处理逻辑时遇到了一些问题。这里是我目前的代码 正如您所看到的,我不确定在我的循环中放置什么。任何关于如何解决这一逻辑的见解都将不胜感激。如果我的代码让你想戳出你的眼球,我也要道歉。O.* var text = "This is a Christopher string with Christopher inside of it complicat

我目前正在制作一个小程序,它将运行一个字符串,找到与我的名字完全匹配的字符串,然后在出现我的名字时将其放入一个空数组。为了让我的
for
循环正常工作,我在处理逻辑时遇到了一些问题。这里是我目前的代码

正如您所看到的,我不确定在我的
循环中放置什么。任何关于如何解决这一逻辑的见解都将不胜感激。如果我的代码让你想戳出你的眼球,我也要道歉。O.*

var text = "This is a Christopher string with Christopher inside of it complicated. The string Coner is fairly long Christopher.";

var myName = "Christopher";

var hits = [];

for(/* ??? */) {
    if (text.search(myName) === true) {
        // If we find it, push name into empty array
        for(/* ??? */) {
            hits.push(text(myName));
        }
    }
}
if( hits === 0){
    console.log("Your name was not found");
}   else{
        console.log(hits);
    }

您可能希望改用正则表达式:

var hits = text.match(/Christopher/g);

if (hits.length == 0) {
    console.log("Your name was not found");
} else {
    console.log(hits);
}
更新

如果要使用变量作为搜索条件,请按以下方法执行:

var condition = "Christopher";
var regex = new RegEx(condition, "g");

hits = text.match(regex);

您可能希望改用正则表达式:

var hits = text.match(/Christopher/g);

if (hits.length == 0) {
    console.log("Your name was not found");
} else {
    console.log(hits);
}
更新

如果要使用变量作为搜索条件,请按以下方法执行:

var condition = "Christopher";
var regex = new RegEx(condition, "g");

hits = text.match(regex);

您可能希望改用正则表达式:

var hits = text.match(/Christopher/g);

if (hits.length == 0) {
    console.log("Your name was not found");
} else {
    console.log(hits);
}
更新

如果要使用变量作为搜索条件,请按以下方法执行:

var condition = "Christopher";
var regex = new RegEx(condition, "g");

hits = text.match(regex);

您可能希望改用正则表达式:

var hits = text.match(/Christopher/g);

if (hits.length == 0) {
    console.log("Your name was not found");
} else {
    console.log(hits);
}
更新

如果要使用变量作为搜索条件,请按以下方法执行:

var condition = "Christopher";
var regex = new RegEx(condition, "g");

hits = text.match(regex);

如果我理解正确,您希望在字符串中搜索您的姓名

for (var i = 0, len = str.length; i < len; i++) {
    alert(str[i]);
}
for(变量i=0,len=str.length;i

此示例应打印字符串中的字母。为了找到你的名字,你应该用一个
if(str[i])==“C”
语句来替换这个警报。如果这是真的,你应该检查下一个字符(H)并继续这样做。最后,如果名称完整,请将其添加到
点击[]

如果我理解正确,您希望在字符串中搜索您的名称

for (var i = 0, len = str.length; i < len; i++) {
    alert(str[i]);
}
for(变量i=0,len=str.length;i

此示例应打印字符串中的字母。为了找到你的名字,你应该用一个
if(str[i])==“C”
语句来替换这个警报。如果这是真的,你应该检查下一个字符(H)并继续这样做。最后,如果名称完整,请将其添加到
点击[]

如果我理解正确,您希望在字符串中搜索您的名称

for (var i = 0, len = str.length; i < len; i++) {
    alert(str[i]);
}
for(变量i=0,len=str.length;i

此示例应打印字符串中的字母。为了找到你的名字,你应该用一个
if(str[i])==“C”
语句来替换这个警报。如果这是真的,你应该检查下一个字符(H)并继续这样做。最后,如果名称完整,请将其添加到
点击[]

如果我理解正确,您希望在字符串中搜索您的名称

for (var i = 0, len = str.length; i < len; i++) {
    alert(str[i]);
}
for(变量i=0,len=str.length;i


此示例应打印字符串中的字母。为了找到你的名字,你应该用一个
if(str[i])==“C”
语句来替换这个警报。如果这是真的,你应该检查下一个字符(H)并继续这样做。最后,如果名称完整,请将其添加到
hits[]

FYI中,如果您想要一种没有循环的快速方法:
text.match(/Christopher/g)。length
将显示单词。FYI如果您想要一种没有循环的快速方法:
text.match(/Christopher/g)。length
将显示单词。FYI,如果您想要一种不带循环的快速方法:
text.match(/Christopher/g).length
将显示单词。仅供参考,如果您想要一种不带循环的快速方法:
text.match(/Christopher/g).length
将显示单词。是的,但不要仅停留在这个位置。我需要它在每次发生的时候找到它。每次发生时,将其推入阵列。我最初让程序遍历每个字符,并将其与“C”匹配,然后在后面添加与myName.length相等的字符。但是有了这些,我就有了44个数组;对于每个字符。我想让它成为一个由3个项目组成的数组。我的名字三次,然后记录下来。
hits.push(“Christopher”)
会将整个名字添加到数组中,而不是作为单独的字符。是的,但不只是保留它。我需要它在每次发生的时候找到它。每次发生时,将其推入阵列。我最初让程序遍历每个字符,并将其与“C”匹配,然后在后面添加与myName.length相等的字符。但是有了这些,我就有了44个数组;对于每个字符。我想让它成为一个由3个项目组成的数组。我的名字三次,然后记录下来。
hits.push(“Christopher”)
会将整个名字添加到数组中,而不是作为单独的字符。是的,但不只是保留它。我需要它在每次发生的时候找到它。每次发生时,将其推入阵列。我最初让程序遍历每个字符,并将其与“C”匹配,然后在后面添加与myName.length相等的字符。但是有了这些,我就有了44个数组;对于每个字符。我想让它成为一个由3个项目组成的数组。我的名字三次,然后记录下来。
hits.push(“Christopher”)
会将整个名字添加到数组中,而不是作为单独的字符。是的,但不只是保留它。我需要它在每次发生的时候找到它。每次发生时,将其推入阵列。我最初让程序遍历每个字符,并将其与“C”匹配,然后在后面添加与myName.length相等的字符。但是有了这些,我就有了44个数组;对于每个字符。我想让它成为一个由3个项目组成的数组。我的名字三次,然后记录下来。
hits.push(“Christopher”)
会将整个名字添加到数组中,而不是作为单独的字符。它像一个符咒一样工作,代码更少,记录得非常完美。我不知道它会自动将点击数转换成数组。有没有一种方法可以使用一个变量而不只是键入我的名字?超级awesomesauce@RyanB!堆叠帮助我成为一个更好的de