このエントリーをはてなブックマークに追加

Memo

JavaScriptでテキスト置換

2011/03/07
Memo

JavaScriptでテキスト置換

Twitterでときどき面白い某掲示板のまとめ記事が流れてくるので、仕事の息抜きに読んだりしています。
で、たまたま見つけた「「泣く」を「抜く」に変えるとkwsk聞きたくなる たま速報」がなかなか面白くてですね。
見つけた文章の「泣」を「抜」に動的に置き換えるにはどうしたら楽かなぁというくだらない事を思いつきまして。
JavaScriptで置換できるんじゃないかな?と調べてみました。

実際に作ってみたのは、これ→「「泣」を「抜」に
ソースを見てもらうと分かるんですが、

function chg() {
     var oldStr = document.getElementById('natxt').value;
     var newStr = oldStr.split("泣").join("抜");
     document.getElementById('nutxt').value = newStr;
}

こんな感じでシンプルです。

id=natxt の値oldStrをとってきて、oldStrの中から「泣」の文字で切り分け、その部分を「抜」で繋ぐ、という感じです。
文字列の置換には、replaceを使うことも出来るそうですが、指定した文字は最初に見つけた文字しか置換出来ないようです。
正規表現を使う場合はreplaceを使うと便利みたいです。
参考URL:http://www.syboos.jp/webjs/doc/string-replace-and-replaceall.html

文章中の指定した文字を置き換えるってのは、「泣」を「抜」以外にも必要なことがあるんじゃないかなぁと思いまして、指定した文字を指定した文字に置換するパターンも作ってみました。

指定した文字を指定した文字に全文置換

これもそんなに難しい事はしていなくて、

function chg() {
     var shitei = document.getElementById('txt1').value;
     var chikan = document.getElementById('txt2').value;
     var oldStr = document.getElementById('before').value;
     var newStr = oldStr.split(shitei).join(chikan);
     document.getElementById('after').value = newStr;
}

こんな感じ。
指定したフォームの値をとってきて、それぞれで置き換えてる感じ。

きっかけはなんかアレでしたけど、やったことがなかったので意外と勉強になりました。

きっかけなんて、なんでもいいですよね。@・ェ・@

Category : MemoTags : ,

関連記事

コメントを残す




About

中の人:Mei Koutsuki (@mei331)
神奈川でweb作ったり、お洋服つくったりしてる黒いひつじさん。ロリィタ系webクリエイター。12年9月に一児の母となり、自宅で子育てしながらお仕事してます。
>> もっと詳しく