例如我有这个文本
"!?vake 7EnEebjP8jXf JFyd5hpIVa6B !?vake".
开始和结束关键字是“!?vake”,我想检索关键字之间的加密内容,解密并替换它。
替换前的html代码为:
<span class="messageBody" data-ft="{"type":3}">!?vake 7EnEebjP8jXf JFyd5hpIVa6B
Fu63LH23dAiB !?vake</span>
并在解密后:
<span class="messageBody" data-ft="{"type":3}">i am the decrypted text</span>
替换应该在整个html文档中工作,而不知道加密文本的具体元素。
答案 0 :(得分:2)
您可以使用RegExp实现此目的。在此处查看演示:http://jsfiddle.net/diode/KVqJS/4/
var body = $("body").html();
var matched;
while ((matched = body.match(/!\?vake (.*?) !\?vake/))) {
if(matched.length > 1){
body = body.replace(/\!\?vake (.*) \!\?vake/, decode(matched[1]));
}
}
$("body").html(body);
function decode(encoded) {
return "decoded " + encoded;
}
答案 1 :(得分:1)
答案 2 :(得分:0)
您可以使用以下正则表达式搜索并替换JS中的代码:
var a = "!?vake 7EnEebjP8jXf JFyd5hpIVa6B !?vake";
var b = a.replace(/\!\?vake(.*)\!\?vake/g, '$1');
/// b contains your string between the keywords which you can decrypt as required.