2016-04-28 2 views
-1

私は正規表現を使用しようとしているを使用して、ALTとのimgタグを置き換えるが、唯一のPHPにし、数年前にそれを使用:javascriptの

:私は代替コンテンツを持つimgタグを置き換えたい

var msgText = thisMSG.getElementsByClassName('message-text')[0].getElementsByClassName('emojitext')[0].innerHTML; 
msgText = msgText.replace('/<img src="([\.]*)"([\.]*)alt="[([\.]*)">/g','\\3'); 

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

何が間違っていますか?

編集:あなたはそれのために正規表現を使用する必要はありません

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

はあなたが正規表現を使用する必要があります確信していますこのため? –

答えて

1

:イメージは以下のように、sentnceの一部にすることができます。下のコードを代わりに使用してください。複数の変更については

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); 
}); 
+0

しかし、それは他のテキストの一部にすぎませんか?次のように:I ❤ u! –

+0

「イメージは他のテキストの一部です」とはどういう意味ですか? –

+0

イメージは文字列全体ではなく、前後のテキストになります –

0

[OK]を、それを得た:

var msgText = null; 
while (msgText = thisMSG.querySelector('.message-text .emojitext .emoji')) 
{ 
    msgText.outerHTML = msgText.alt; 
} 

との使用のためのテキスト:

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

これは、JakubRożekが提案していたものと同じです。彼の答えを受け入れて、それをコメントや編集として追加するのは公正だったでしょう。あなたが求めていたのは少し曖昧だったと考えています。 – Lex

+0

あなたは正しいです。まだこのサイトの仕組みを取得しようとしています。とにかく私は私のコメントを削除しません、多分それは他の人に役立つでしょう。 –