1

文字列内のすべての特殊文字を文字コードに変換する小さな AS3 スクリプトがあります。

スクリプトは次のとおりです。

url = url.replace(new RegExp("%","g"),"%25")
            .replace(new RegExp("?","g"),"%3F")
            .replace(new RegExp(":","g"),"%3A")
            .replace(new RegExp("/","g"),"%2F")
            .replace(new RegExp("=","g"),"%3D")
            .replace(new RegExp("&","g"),"%26");

さて、私は RegExp の初心者でもありませんが、試してみました。この小さなスクリプトはうまく機能しているように見えますが、疑問符 (?) だけが置き換えられていません。

理由を教えてくれる人はいますか?

これをコーディングするためのより短い方法も教えていただければ、お気軽に共有してください。これが正規表現のベストプラクティスではないことはわかっています...

挨拶する

4

2 に答える 2

3

疑問符をエスケープする必要があります。"\?"

于 2012-11-19T20:49:28.093 に答える
2

参考になるかわかりませんが、脱出について知っていますか?

例えば

var encodedURL:String = escape(url);
于 2012-11-19T21:56:51.920 に答える