AS3 | フラッシュCS6| Adobe Air 3.5
非常に長い文字列があり、最終的にXMLとしてフォーマットされます。文字列には、次の行に沿って何かのインスタンスがいくつかあります。
<title>Some title</title>
//the following line would need changed
<title>Some title</garbage>
<title>Some title2</title>
<title>Some title3</title>
//the following line would need changed
<title>Someone's title & (his info)</garbage>
//the following line should NOT change
<another title>something else</garbage>
これらすべてを検索して置き換える必要があります。
<title>(whatever is here)</garbage>
そしてそれらを作ります:
<title>(whatever is here)</title>
ご覧のとおり、「ガベージ」はすべてのインスタンスに適用されるわけではないため、単純に検索して置き換えることはできません...<タイトル>を使用するものだけを置き換えたい...<別のタイトル>も使用しないでください<title>と</garbage>の間にどの文字が入るかは不明であることに注意してください
だから私はこれがうまくいかないことを知っていますが...私は次のようなことを考えていました:
str = str.replace(/<title>\w+<\/garbage>/, "<title>\w+<\/title>");
答えはこのページの「サブ文字列のキャプチャ」の下にあると思いますが、これまでのところ運がありません: http ://www.sevenson.com.au/actionscript/testing-regular-expressions/
この時点では、ランダムなものを接続しているように見えるので、助けを求める方が理にかなっています。
アドバイスをいただければ幸いです。