javascript - 如何在javascript中替换特定索引后的字符串

标签 javascript

嗨,我有包含 html 内容的字符串,我想使用 javascript 将标签

替换为 '' 空白,我想将相应的结束标签

替换为
该字符串中的标记。

如果我使用

第一行:

str=str.replace(/<p class=\"MsoNormal\">/g,'');    

第二行:str=str.replace(/<\/p>/g,'<br>');

所有结束

标记都被删除。但我想替换开始标记为“

”的结束

标记。

脚本的第一行对我来说没问题。我应该用什么来替换第二行中相应的结束标记。

最佳答案

检查一下:输出是我从你的问题中得到的内容,替换为空字符串

var replaceTag = function(str, replaceTagString, endTagString) {
    var str = '';
    while(str.indexOf(replaceTagString) != -1) {
        //search for </p> after my matched String
        var indexOfClosingTag = str.indexOf(endTagString, str.indexOf(replaceTagString))
        //Replace </p> using Substring
        str = str.substr(0,indexOfClosingTag) + "<br>" + str.substr(indexOfClosingTag + endTagString.length,k.length)
        //Replace your main String
        str = str.replace(replaceTagString,'')
    }
    return str
}

var k = "<p class='MsoNormal'>something</p><p>other p tag</p><h1>I am h1</h1><p>Hello p</p><p class='MsoNormal'>Replace My Tag too</p>"

replaceTag(k, "<p class='MsoNormal'>", "</p>")

输出:

"something<p>other p tag</p><h1>I am h1</h1><p>Hello p</p>Replace My Tag too"

概念:

string.indexOf(searchvalue,start)

Start searching for End of the Tag (P) after my current matched string position

关于javascript - 如何在javascript中替换特定索引后的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31259987/

相关文章:

javascript - 多个列表和按钮,但文本输入未保存在正确的列表中

javascript - 为什么 jQPlot dateAxisRenderer 不能正常工作?

javascript - IE8 中的 __proto__ 使用 ko

javascript - 类型错误 : Object #<HTMLSelectElement> has no method 'getSelected' in Joomla ChronoForm

php - 如何向使用 iPhone 的用户显示特殊的页面叠加层?

JavaScript 来控制图像动画?

javascript - 如何使用 Google map 在 ASP MVC 中显示动态位置

javascript - 意大利各省(非地区)的谷歌地理 map 可视化

javascript - Zen Cart 产品 div 上的可点击链接

javascript - paypal 支付 api 不适用于属性 "payee"