15

Javacriptで、次のような文字列を指定します

var str = "this's kelly";

アポストロフィ(')を別の文字に置き換えたい。これが私がこれまでに試したことです:

str.replace('"', 'A');
str.replace('\'', 'A');

これらはどれも機能しません。

どうすればいいのですか?

また、クエリ文字列またはURLに渡されたときにページがクラッシュしたり、望ましくない結果が生成されたりする無効な文字についてアドバイスしていただけますか?たとえば、アポストロフィ(')を渡すと、望ましくない結果が生成されます。

4

3 に答える 3

35
var str = "this's kelly"
str = str.replace(/'/g, 'A');

バージョンが機能しなかった理由str.replaceは、その場で更新せずに新しい文字列を返すためです。

また、 の正規表現バージョンを使用するように更新しましたstr.replace。これは、オプションと組み合わせるとg、最初のインスタンスだけでなく、すべてのインスタンスを置き換えます。実際に最初のものだけを置き換えたい場合は、を削除するgか、str = str.replace("'", 'A');

于 2012-08-08T18:59:40.803 に答える
2

これを行う:

str = str.replace("'","A");
于 2012-08-08T18:59:41.267 に答える
2

str = str.replace("'", "A");

関数を実行していますが、再度何にも割り当てていないため、var は変更されません。

于 2012-08-08T19:00:42.583 に答える