我这里有3个例句,其中名称是动态生成的。
是否有可能获得这个名称的位置,比如说它是在" 我' m "在之前,
<p id="demo">Hi, I'm Johnny Bravo, how can i help you?</p>
或
<p id="demo">Hi, I'm Martir de Kuts, how can i help you?</p>
或
<p id="demo">Hi, I'm Jayson Dee, how can i help you?</p>
在句子上取名字后。我接下来要做的就是在它上面生成一个随机名称,但我有一个工作代码,所以我只需要确定是根据我的例子获取名称的位置。
****** 更新到我的帖子 ******
这就是我想要实现的目标,现在它的工作和感谢帮助我。
var target = document.getElementById('demo');
var text = target.textContent;
var ArrayName = ['Vincent', 'Marie', 'Paul', 'Virginie'];
var randomIndex = Math.floor(Math.random() * ArrayName.length);
var randomElement = ArrayName[randomIndex];
var split1 = text.split(',');
var split2 = split1[1].split("I'm ")
split2[1] = randomElement;
split1[1] = split2.join("I'm ");
target.textContent = split1.join(',');
&#13;
<p id="demo">Hi, I'm Johnny Bravo, how can i help you?</p>
&#13;
答案 0 :(得分:0)
检查here和https://www.w3schools.com/Jsref/jsref_indexof.asp
示例:
var sentence = "Hi, I'm Johnny Bravo, how can i help you?";
var place = sentence.indexOf("Johnny Bravo");
//place = 9
sentence = sentece.replace("Johnny Bravo", "Gordon Freeman");
//sentence = "Hi, I'm Gordon Freeman, how can i help you?"
答案 1 :(得分:0)
使用字符串拆分
var target = document.getElementById('demo');
var text = target.textContent;
var split1 = text.split(',');
var split2 = split1[1].split("I'm ")
split2[1] = 'Foo Bar';
split1[1] = split2.join("I'm ");
target.textContent = split1.join(',');
<p id="demo">Hi, I'm Johnny Bravo, how can i help you?</p>