JavaScriptには、文字列オブジェクト用の強力なreplace()
メソッドが付属しています。基本 - - 一般的に
用語、それはこのように動作します:.replace()
方法に
var myString = yourString.replace([regular expression or simple string], [replacement string]);
最初の引数はあなたが交換したい元の文字列の一部です。プレーンな文字列オブジェクト(リテラルでも)でも正規表現でも表現できます。
正規表現は、明らかに部分文字列を選択する最も強力な方法です。
第2引数は、置換する文字列オブジェクト(リテラルでも可)です。あなたのケースでは
は、のようになり、交換作業は次のとおりです。あなたが後でそれを交換しようとする必要がある場合は、あなたが台無しと同じように
xmlData=xmlData.replace(/&/g,"&");
xmlData=xmlData.replace(/>/g,">");
//this time it should work.
お知らせが最初の交換作業は、既存のよくアンパサンドです引用されたエンティティは、確かに">"
と同じです。
さらに、regex 'g'フラグに注意してください。最初の一致だけでなく、テキスト全体に置換が行われます。
正規表現を使用しましたが、これらのような単純な置換でも、プレーンな文字列は完璧にフィットします。
String.replace()
hereの完全なリファレンスを見つけることができます。
http://stackoverflow.com/questions/2327663/xml-safe-urlencoding – cederlof
XMLを生成する場合は、XMLライブラリを使用し、文字列をマッシュしないでください。そういうわけで、狂気がある。 – Quentin
'replaceAll()'はJavaScriptではデフォルトでは使用できません。 'String 'を拡張しない限り、グローバルな正規表現に' replace() 'を使わなければなりません。プロトタイプ 'には' replaceAll'が含まれています。 '良くありません。 – jabclab