使用 javascript 和正则表达式删除 HTML 字符串中的第一个 img 标记
Remove the first img tag in a string of HTML using javascript and regex
使用Javascript和正则表达式,给定:
stringHTML = "bla bla bla <img src='img1.png' /> bla bla bla
<img src='img2.png' /> bla bla bla <img src='img3.png' />";
你如何删除
<img src='img1.png' />
来自字符串HTML的第一个img标签
这样
的事情会起作用:
var output = stringHTML.replace(/<img src='img1.png' '/>/, '');
这将仅找到您指定的确切子字符串(文字<img src='img1.png' />
),并将其替换为空字符串。请注意,需要在模式中转义正斜杠,因为 JavaScript 使用正斜杠来分隔正则表达式文字。
要从输入字符串中删除第一个 <img>
标记,而不考虑路径或其他属性,您可以使用以下内容:
var output = stringHTML.replace(/<img.*?'/>/, '');
这将找到一个文字<img
后跟零个或多个任何字符,不贪婪,后跟一个文字/>
。请注意,如果没有全局开关(g
),它只会替换第一次出现
JavaScript 内置了出色的 DOM 解析功能。
x = document.createElement("x");
x.innerHTML = stringHTML;
x.removeChild(x.querySelector("img"));
请注意,querySelector("img")
选择第一个图像。 如果您特别需要选择带有src=img1.png
的图像,则可以使用属性选择器。 如果查询选择器不可用,则必须循环使用 getElementsByTagName
获取的 img 标记。
http://jsfiddle.net/ZsqK5/
相关文章:
- 而循环只设置php中输入字段中的第一个值
- 错误:$injector:modulerr模块错误(我的第一个SPA应用程序)
- IE11中的第二个调用取消了第一个Fetch API调用
- Javascript XMLHttpRequest——只有第一个POST请求有效
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- 将OnClick函数设置为<ul>,最后一个ul是擦除第一个ul-s
- RxJS油门行为;立即获取第一个值
- Angular UI网格:如何通过第一个UI网格中的按钮使第二个UI网格可见
- 选择多个实例中的第一个
- 如何在调用下一个请求之前完成第一个Ajax Get请求
- Lodash:返回对象的第一个键,该对象的值(即数组)中有一个给定的元素(即字符串)
- 看起来第一个console.log是'It’不太对
- 与杜兰达尔合作的第一个JavaScript项目.尝试从第三方 API 获取数据
- 节点发布错误对象的第一个“属性”
- Javascript:表单验证getElementById仅返回第一个id元素
- 仅将 CSS 规则应用于
中的第一个 ,而不分配类/ID - JS在隐藏未定义的值后仅从数组中返回第一个id的值
- 高图表,检测点是否在堆栈中的第一个
- json结果显示第一个值
- 使用 javascript 和正则表达式删除 HTML 字符串中的第一个 img 标记