查找在给定元素中出现的字符串
Find occurrences of a string in a given element.
我正在寻找一种方法来查找某个元素内的某个字符的实例。我意识到我在做这样的事情:
var string = 'this is a string';
string.indexOf('a');
然而,我希望indexOf查看特定html文件中的特定标签。(在本例中为p标记)。我已经评论了我试图使用,以实现这一点。
function findQuestion() {
// var string1 = document.getElementsByTagName('p');
var string2 = '??';
if (string2.indexOf('?') !== -1) {
console.log('foundQuestion');
}
else {
console.log('nothing');
}
}
findQuestion();
这段代码显然只是检查是否有一个'?'在string2,但我怎么写这个找到'的所有实例?并返回在p标记之前的所有内容,直到开始的p标记,其中'?"被发现了?"
谢谢。
你是怎么做到的:
- 获取所有
p
元素。 创建一个空数组,results - 遍历它们并检查每个p元素
- 如果p的innerHTML包含一个问号,在问号处分割字符串,获取第一部分并添加一个问号。然后将这个新字符串添加到结果数组 返回结果数组
示例代码:
function findQuestion() {
var ps = document.getElementsByTagName('p');
var result = [];
for(var i = 0; i < ps.length; i++){
var p = ps[i];
if (p.innerHTML.indexOf('?') !== -1) {
result.push(p.innerHTML.split("?")[0] + "?");
}
}
return result;
}
findQuestion();
http://jsfiddle.net/3o4tcchL/1/
使用循环条件检查
内的全部内容,然后使用类似slice的东西,它将获取所有内容直至指定的特定索引。
相关文章:
- 对id以某个字符串开头的元素进行计数
- 如何使用jQuery each分离字符串中的元素
- 如何使用JQuery在Javascript中转换字符串中的HTML元素
- 数组中元素(字符串)的总和
- JavaScript forEach.迄今为止的字符串元素
- 试图从数组中只移除字符串元素,但无法向右循环
- 如何将主干序列化形式的所有字符串元素大写
- 如何在 JS 中将字符串元素解析为对象
- 将 JSON 数组中的字符串元素解析为整数
- 使用字符串元素列表作为 Select2 组件的源
- 从 JavaScript 数组中删除字符串元素
- 将字符串元素传递给数据键
- 使用JavaScript将每个数组字符串(元素)的某些部分加粗
- 检查javascript数组中的字符串元素
- 将数组的字符串元素与另一个数组的对象元素属性进行比较
- 如何拆分字符串数组中的每个字符串元素
- 试图使用映射将字符串元素添加到数组
- 在javascript的for循环中设置数组's字符串元素的长度为一个变量
- 在javascript中查找数组中字符串元素的最大出现次数
- 在Django中发送一个字符串元素列表