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

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

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

回答の条件
  • 1人2回まで
  • 登録:2008/12/11 08:03:15
  • 終了:2008/12/18 08:05:02

回答(2件)

id:takerudayo No.1

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

ポイント35pt

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

検索文字列:(.+)(,)(.+)(郡)(.+)(町)(.+)

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


解説

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

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

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

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

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


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

id:fuentebella No.2

fuentebella回答回数269ベストアンサー獲得回数302008/12/11 10:02:23

ポイント35pt

こんな漢字でどうでしょう 「郡」と「町」を目印に切り出しています。


検索する文字例 (.*郡)(.*)町(.*)

置換後の文字列 \1\2町,\2

  • id:fuentebella
    この方法は「郡」と「町」の文字だけを頼りに切り出しているので、「山川郡西郡山町3-3-3」のように「郡や町の名前の中に「郡」や「町」が入ると正しく動きません。 (こんな住所があるのかどうか知りませんが。。) 
    厳密にやろうとすると、もともとのデータで郡と町をカンマか何かで区切っておく必要があると思います。

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

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

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

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