• ベストアンサー
  • 暇なときにでも

文字列の置換

文字列の置換 たとえば, if(abcd) という文字列があったときに,これを while(abcd){ に置換するにはどうすればいいでしょうか(同じような置換をしたいところが文章中にいくつもあるとします).つまり,文字列の一部をそのままにして置換するということです.いまの場合だと if( → while( はできたとしても, ) → ){ は,文章中に“)”がたくさんある場合は難しいですよね.wordなら,ワイルドカードを使って if(*) とすれば,検索はできるのですが,そのまま置換すると while(*){ となってしまい,*がそのまま残ってしまいます.どうにかできないでしょうか?

noname#237919
noname#237919

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数120
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • keithin
  • ベストアンサー率66% (5278/7939)

ワードでは置換を開始し オプションを開いて ワイルドカードのチェックを入れてあいまい検索のチェックを外し if\((*)>\) を while(\1){ に全て置換します。 #補足 単語の終わりを切っておかないと サンプル--- if( → while( はできたとしても, ) → ){ --------- の閉じカッコまでヒットします。 逆にカッコの中が実際は「if(abcd)」のようでは無かった場合は,また違う配慮が必要です。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

なるほど,ありがとうございます!

関連するQ&A

  • 文字列の置換の仕方について

    下記のような文字列の置換は、どのようにすればいいでしょうか? <?php $strString="abcd<!--s_1-->うほほ<!--e_1-->efg";//本当は、もっと長い文字列が入っています $strReplace="/<!--s_1-->.*<!--e_1-->/"; $word="あいう"; //関数へ飛ばします $result=fun_replace($strReplace,$strString,$word); function fun_replace($strReplace,$strString,$word){ //さて、どう組むか? } ?> 結果として、"abcd<!--s_1-->うほほ<!--e_1-->efg" → "abcd<!--s_1-->あいう<!--e_1-->efg" になればいいわけです。 ただし、常に、<!--s_1-->が来るとは限らないので、 (<!--s_2-->などが来ることもあります) "<!--s_1-->"."あいう"."<!--e_1-->" というような、<!--s_1-->などを明示的に指定して、文字列を 連結することはできません。 つまり、 preg_replace($strReplace,"<!--s_1-->なんと<!--e_1-->",$strString) という書き方は、できないという条件があります。

    • ベストアンサー
    • PHP
  • 文字列の置換

    JAVAであるファイル内の文字列を置換するプログラム(日本語)を作りたいのですが、 ・ ・ String h_s; FileReader h_fr = new FileReader(in_filename); BufferedReader h_br = new BufferedReader(h_fr); while(true){  h_s = h_br.readLine();  if (h_s == null){   break;  }  ●文字列を置換するプログラム● } ・ ・ ここの●文字列を置換するプログラム●にあたる適当な関数って何かありますか? たとえばperlでいうと↓みたいなものなのですが・・・ s/置換前文字/置換後文字/g よろしくお願いします。

    • ベストアンサー
    • Java
  • 長い文字列の置換を出来るエディタを教えてください。

    数式Texのコマンドなんですが、1000文字の文字列を1500文字の文字列に置換しようとしたところ、255バイト以上のデータはきられてしまい、正常に置換できませんでした。 秀丸、Wordのソフトウェアや複数行置換のフリーウェアを探したのですが、正常に置換できませんでした。 このように1000文字を1500文字への置換等、長い文字列を置換できるソフトウェアがあれば教えてください。

  • {0>と<0}ではさまれた文字列の置換

    Word文書中で、記号{0>と<0}にはさまれた1文字以上の文字列を、これらの記号も含めて半角スーペスに一括置換する方法を教えてください。Wordのバージョンは、2003です。たとえば、 私の名{0>前は山<0}田太郎です。 上記の文なら、置換後は下記のようになって欲しいのです。 私の名 田太郎です。 なお、{0>と<0}の記号自体は置換できないが、はさまれた文字列をスペースに変換することならできる、という回答でも歓迎いたします。つまり、 下記のようになります。 私の名{0> <0}田太郎です。

  • 検索する文字列 △{2}  置換後の文字列 ^t (^ は(へ)のキー) 検索オプション

    置換(編集、置換(E)の作業ですが、複数の(Space)(空白)を(Tab)扱いにして変換する作業(なんですが、編集。置換、編集と置換、置換)   検索する文字列 △{2}  置換後の文字列 ^t (^ は(へ)のキー) 検索オプション(ワイルドカードを使用するにレ点)  ※ △{2} の 2 は、(Space)(空白)であり変数である、△は(さんかく と打ち変換しました)、、、という感じで作業したんですが、うまくいきませんが?どこが、変なのでしょうか?このまま、作業しても、結果が0個でしたので、△を、(Space)キー1個に、書き換えて、作業しましたところ、置き換えが終了しました、と、表示されたのですが、t t t t とたくさん表示されました、、、?

  • 文字列の置換で・・・

    Javaでの文字列の置換についてなんですが ある文字を任意の文字に置換し表示させるとともに 何個の文字を置換したかも同時に知らせたい場合は どのような処理をしたらよいでしょうか? ぜひご協力よろしくお願いします!! (例)入力した文字列に"a"が含まれる場合は"b"に置換し   その際に変換した文字数も表示してください。     basic→出力結果: "bbsic" 置換した文字数は1です。

    • ベストアンサー
    • Java
  • Wordで特定の文字列を下線付きに置換

    こんにちは。 Wordで検索/置換機能を使うと特定の文字列を別の文字列に置換できますが、置換後の文字列を修飾文字(下線付き)に出来ないでしょうか? 具体的には、業績集で特定の著者名に下線を引きたいのですが、量が多いので一括で出来ればと思って質問しました。

  • 置換時にワイルドカードを使って複写することは可能でしょうか?

    カテゴリーこちらでよろしいか不安ですが、よろしくお願い致します。 HTMLに置換えたい文字列が複数ありますが、置換方法がわかりません。 「カテゴリー/*">名前</A>」の *の部分の違う文字列が一つのHTML内にたくさんあり、 それを 「カテゴリー/*">*</A>」と置換したいのです。 カテゴリー/*">名前</A>  ↓ カテゴリー/*">*</A> ということです。 ご覧の通り、ワイルドカードを使って複写したいのですが・・・。 調べてみたのですが、Wordではワイルドカードで検索 したものを置換え後に反映させることはできないらしく、ただ「カテゴリー/*">*</A>」という文字列になってしまいます。 TextSSでは、検索文字列と置換後文字列の中のワイルドカードの数が違うと置換実行さえできません。 何か良い方法があるものでしょうか? どうぞよろしくお願い致します。

  • エクセル 置換後の文字列について

    エクセル2003です 置換後の文字列について質問させてください 特定のセルに文字を入力し 例 C100に(9月)等 検索と置換にて 置換後の文字列を C100のテキストに 置換したいのですが 入力時にC100を選択する方法がわかりません  よろしくお願い致します

  • 文字列の置換について

    MySQLデータベース内の文字列を、別の文字列に書き換えたいんです。 例えば、文字列"http://www.xxx.com" を文字列"http://www.yyy.com"に書き換えます。 SQL文で操作して、一気にデータベースの各テーブルに入った大量の文字列を全部置換させたいんです、そのSQL文どういうふうに書きますか? ご存じの方がいっらしゃいましたら、どうぞお教え下さい。

    • ベストアンサー
    • MySQL