使用javascript将img标记替换为alt

使用javascript将img标记替换为alt,javascript,regex,Javascript,Regex,我尝试使用正则表达式,但仅在PHP中使用,而且几年前: var msgText = thisMSG.getElementsByClassName('message-text')[0].getElementsByClassName('emojitext')[0].innerHTML; msgText = msgText.replace('/<img src="([\.]*)"([\.]*)alt="[([\.]*)">/g','\\3'); var msgText=thismg.ge

我尝试使用正则表达式,但仅在PHP中使用,而且几年前:

var msgText = thisMSG.getElementsByClassName('message-text')[0].getElementsByClassName('emojitext')[0].innerHTML;
msgText = msgText.replace('/<img src="([\.]*)"([\.]*)alt="[([\.]*)">/g','\\3');
var msgText=thismg.getElementsByClassName('message-text')[0]。getElementsByClassName('emojitext')[0]。innerHTML;
msgText=msgText.replace('//g','\\3');
我想用alt内容替换img标记:

<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="emoji emojiordered0186 selectable-text" draggable="false" alt="❤">

知道怎么了吗

编辑:图像可以是Sennce的一部分,如:

I <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="emoji emojiordered0186 selectable-text" draggable="false" alt="❤"> U!
I你!

您不必为此使用正则表达式。请使用下面的代码

var msgText = thisMSG.querySelector(".message-text .emojitext");
msgText.parentNode.replaceChild(document.createTextNode(msgText.alt), msgText);
对于多个更改:

[].forEach.call(document.querySelectorAll(".message-text .emojitext"), function(emoji) {
   emoji.parentNode.replaceChild(document.createTextNode(emoji.alt), emoji);
});
好的,明白了:

var msgText = null;
while ( msgText = thisMSG.querySelector('.message-text .emojitext .emoji') )
{
  msgText.outerHTML = msgText.alt;
}
和使用文本:

thisMSG.querySelector('.message-text .emojitext').innerHTML

你确定要使用正则表达式吗?但是如果图像只是其他文本的一部分?比如:我爱你!你说的“图像只是其他文本的一部分”是什么意思?图像不是整个字符串,可以是前后更多的文本,这无关紧要。该代码仅替换图像。只要为img标签提供合适的选择器,您就完成了。在你发布的代码中,它将是“.message text.emoji”,它必须工作,也许只需执行document.querySelector(“.emoji”),你必须尝试使用选择器。这实际上是Jakub Rożek所建议的。如果接受他的回答为已接受,并将其作为评论或编辑添加,那将是公平的。考虑到你的要求有点模棱两可,你是对的。。仍在努力了解该网站的工作方式。无论如何,我不会删除我的评论,也许它会对其他人有所帮助。