- - PR -
文字列挿入について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-12-26 11:25
String.replaceAllを使用しマッチした文字列の直前に文字列を挿入するのは
どのようにしたらいいのでしょうか? '$`'などあるみたいですがどのようにしたらいいのかわかりません。 やりたいことは以下です。 挿入前:testAtestBtestCtestD testBとtestDの直前に文字列(****)を挿入(なんでもいい) 挿入後:testA****testBtestC****testD よろしくおねがいします |
|
投稿日時: 2007-12-26 12:56
初めまして。
replaceAllは正規表現を使うことになっていますので 環境 J2SE 6.0 String str = "testAtestBtestCtestD"; String rep = str.replaceAll("test[BD]", "****$0"); System.out.println(rep); 出力 testA****testBtestC****testD testBとtestDに一致する部分を見つけ出し ****$0と置換する $0は検索一致文字列になるので testBに一致した場合は****testBと置換 testDと一致した場合は****testDと置換します。 正規表現がわかるようになると置換が楽しくなりますね。 初めのうちは正規表現対応のテキストエディタで慣れるのもいいかと思います。 エディタによっては\0とか$0とかアルゴリズムに応じた後方参照ですが 基本はだいたい同じですね。 以下蛇足 BBコード内で括弧[]を使う方法がわからない・・・ 追記13:04 BBコード内括弧[]使えないみたいですね・・・ 不便なような便利なような・・・ [ メッセージ編集済み 編集者: なぎさ。 編集日時 2007-12-26 13:03 ] |
|
投稿日時: 2007-12-26 13:06
>なぎさ。さん
どうもありがとうございます。 さっそく試させて頂きました。 まさに自分が求めていた結果が出せました。 以前なら一文字ずつループで処理していたんですが 正規表現を使ったら便利ですね。 またご教授お願いします。 |
1