正規表現について知恵をお貸し下さい。

AAAA,BBBB市CCCC
を、
AAAA,BBBB市,CCCC
と置き換えたいのですが、どのような正規表現になるでしょうか?

使用するエディタは、EmEditorです。

回答の条件
  • 1人2回まで
  • 登録:2008/12/11 07:41:03
  • 終了:2008/12/18 07:45:02

回答(1件)

id:takerudayo No.1

takerudayo回答回数165ベストアンサー獲得回数292008/12/11 10:05:33

ポイント60pt

以下のように指定していただければできます。

検索文字列:(.+)(,)(.+)(市)(.+)

置換文字列:\1\2\3\4,\5


解説

検索文字列で指定した()表記にそれぞれ1とか2という番号が自動で付きます。

これに対して置換文字列で読み込んだ文字列を置換文字列で並べています。

例えば置換文字列に「\1\1」と書くと、「AAAAAAAA」という結果になります。

例えば置換文字列に「\4\4」と書くと、「市市」という結果になります。

今回は並び替えにさらに「,」を付加するとのことでしたので、置換文字列内に「,」が書いてあります。


もう少し簡素にもかけなくは無いですが、わかりやすさ重視の為に1単語毎にブロック化して表現しました。

簡素に表現すると、

検索文字列:(.+市)(.+)

置換文字列:\1,\2

と書いても同じ事ができます。

  • id:ku__ra__ge
    挙げられている例だけでは、どのような意図の置換がしたいのか読み取れません。
    別に正規表現使わなくても、「市」を「市,」に置換しただけでいいんじゃないですか?
  • id:fuentebella
    市川市とかめんどくさそう。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません