複数の文字列を一度に置換する
2023-08-26 17:25:40
質問
JavaScriptでこれに相当する簡単なものはありますか?
$find = array("<", ">", "\n");
$replace = array("<", ">", "<br/>");
$textarea = str_replace($find, $replace, $textarea);
これは、PHPの
str_replace
を使用しています。これは、検索と置換に単語の配列を使用することができます。JavaScript / jQueryを使ってこのようなことは可能でしょうか?
...
var textarea = $(this).val();
// string replace here
$("#output").html(textarea);
...
どのように解決するのですか?
Stringオブジェクトを拡張して、必要なことを行う独自の関数を作ることができます(機能が不足することがあった場合に便利です)。
String.prototype.replaceArray = function(find, replace) {
var replaceString = this;
for (var i = 0; i < find.length; i++) {
replaceString = replaceString.replace(find[i], replace[i]);
}
return replaceString;
};
グローバルな置換には正規表現を使うことができます。
String.prototype.replaceArray = function(find, replace) {
var replaceString = this;
var regex;
for (var i = 0; i < find.length; i++) {
regex = new RegExp(find[i], "g");
replaceString = replaceString.replace(regex, replace[i]);
}
return replaceString;
};
関数を使うには、PHPの例と同じような感じになります。
var textarea = $(this).val();
var find = ["<", ">", "\n"];
var replace = ["<", ">", "<br/>"];
textarea = textarea.replaceArray(find, replace);
関連
-
[解決済み] 正規表現で変数を使うには?
-
[解決済み] JavaScriptで複数行の文字列を作成する
-
[解決済み] JavaScriptで文字列をbooleanに変換するにはどうしたらいいですか?
-
[解決済み] HTML5のlocalStorageにオブジェクトを格納する方法は?
-
[解決済み] Vimで文字を改行で置き換える方法
-
[解決済み] HTMLマークアップのどこに<script>タグを記述すればよいですか?
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み] JavaScriptで日付の書式設定に関するドキュメントはどこにありますか?
-
[解決済み] jQueryで画像をプリロードする
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み] JavaScriptでstr_replaceを実行し、テキストを置き換えるには?
-
[解決済み] 文字列のn番目の出現箇所を取得するには?
-
[解決済み] Reactコンポーネントでthis.setStateを複数回使用するとどうなりますか?
-
[解決済み] JavaScript のオブジェクトの配列を比較し、最小値/最大値を取得する
-
[解決済み] TypeScriptプロジェクトで既存のC#クラス定義を再利用する方法
-
[解決済み] $.ajax実行中にローディングイメージを表示する
-
[解決済み] CORS: 認証モードは 'include' です。
-
[解決済み] javascriptでオプションのパラメータを扱う
-
[解決済み] JavaScript で css プロパティを使用して HTML 要素の背景色を設定する方法