首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用javascript查找和替换某些关键字之间的文本?

如何用javascript查找和替换某些关键字之间的文本?
EN

Stack Overflow用户
提问于 2011-12-30 00:22:01
回答 3查看 269关注 0票数 0

例如,我有这样一篇文章

代码语言:javascript
复制
"!?vake 7EnEebjP8jXf JFyd5hpIVa6B  !?vake".

开始和结束关键字是"!?vake“,我想检索关键字之间的加密内容,解密并替换它。

替换之前的html代码为:

代码语言:javascript
复制
<span class="messageBody" data-ft="{&quot;type&quot;:3}">‎!?vake 7EnEebjP8jXf JFyd5hpIVa6B
Fu63LH23dAiB !?vake</span>

解密后:

代码语言:javascript
复制
<span class="messageBody" data-ft="{&quot;type&quot;:3}">‎i am the decrypted text</span>

替换应该在整个html文档中工作,而不需要知道加密文本的具体元素。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-30 01:43:07

您可以使用RegExp来实现这一点。点击此处查看演示:http://jsfiddle.net/diode/KVqJS/4/

代码语言:javascript
复制
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;
}
票数 2
EN

Stack Overflow用户

发布于 2011-12-30 00:30:49

您可以使用regex查找(和替换)数据。

这是一个快速而肮脏的JSFiddle:http://jsfiddle.net/z8rVc/1/

不过,我相信有人会想出一个更优雅的方法。

票数 1
EN

Stack Overflow用户

发布于 2011-12-30 00:27:11

您可以使用以下正则表达式搜索并替换JS中的代码:

代码语言:javascript
复制
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.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8670348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档