我试图删除除所有html标签p,a和img标签.现在我有:
content.replace(/(<([^>]+)>)/ig,"");
Run Code Online (Sandbox Code Playgroud)
但这会删除所有HTML标记.
这是api内容的示例:
<table id="content_LETTER.BLOCK9" border="0" width="100%" cellspacing="0" cellpadding="0" bgcolor="#F7EBF5">
<tbody><tr><td class="ArticlePadding" colspan="1" rowspan="1" align="left" valign="top"><div>what is the opposite of...[] rest of text
Run Code Online (Sandbox Code Playgroud)
您可以匹配标记以保留在捕获组中,然后使用交替匹配所有其他标记.然后替换为$1:
(<\/?(?:a|p|img)[^>]*>)|<[^>]+>
Run Code Online (Sandbox Code Playgroud)
演示:https://regex101.com/r/Sm4Azv/2
和JavaScript演示:
var input = 'b<body>b a<a>a h1<h1>h1 p<p>p p</p>p img<img />img';
var output = input.replace(/(<\/?(?:a|p|img)[^>]*>)|<[^>]+>/ig, '$1');
console.log(output);Run Code Online (Sandbox Code Playgroud)
您可以使用以下正则表达式删除除 a,p和之外的所有 HTML 标签img:
<\/?(?!a)(?!p)(?!img)\w*\b[^>]*>
Run Code Online (Sandbox Code Playgroud)
替换为空字符串。
<\/?(?!a)(?!p)(?!img)\w*\b[^>]*>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1899 次 |
| 最近记录: |