文字を消す



0   名前: CUPSOUP : 2006/03/09 15:39
仮に、bun = "そのほかのお勧め書籍はこちら"という文字列から、'そのほかの' を切りとって
"お勧め書籍はこちら" にするにはどうしたらよいですか。

1   名前: とく : 2006/03/09 15:39
正規表現で置換するとか
result = bun.replace(/そのほかの/,"")

2   名前: m035 : 2006/03/09 15:39  [URL
function cut(str,key){
return str.substr(str.indexOf(key)+key.length);
}
のような関数を作っておくと、
var bun="そのほかのお勧め書籍はこちら";
bun=cut(bun,"そのほかの");
で処理できます。

3   名前: CUPSOUP : 2006/03/09 15:39
お2人ともお答えありがとうございました。
とくにm035さんの式便利ですね。しかし、これって、消したい
文字列が文中にあると一部しかでないのですね。
一般的に対象語がどこにあっても使える関数はできますか?

4   名前: m035 : 2006/03/09 15:39  [URL
function cut(str,key){
return str.split(key).join("");
}

上記関数は使いやすいと思います。
下記関数は回答1番のとく氏のものをアレンジです。
keyは正規表現として扱われます。
もちろん、正規表現を使わなければ上記関数と同等の動作です。
もちろんどちらの関数も複数個keyがあっても消去します。

function cut(str,key){
var reg=new RegExp(key, "g");
return str.replace(reg,"");
}

5   名前: CUPSOUP : 2006/03/09 15:39
m035さん
ありがとうございました。とても勉強になりました。

一覧へ戻る