人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

正規表現に詳しい方にお尋ねします。
,XXX-XXXXYZZZZZZZZZ……,
Xは半角数字、Yは全角スペース、Zは全角文字・半角数字・半角ハイフンです。
(お察しの通り、これは郵便番号と住所です)
これを、
,XXX-XXXX,ZZZZZZZZZ……,
のように置換したいのですが、正規表現を用いて置換するにはどうすればよいですか?
使用するのは、EmEditorです。

●質問者: crashtruck5
●カテゴリ:コンピュータ 学習・教育
✍キーワード:EmEditor XXXX 数字 正規表現 郵便番号
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● airplant
●35ポイント

単純に途中の全角ブランクを取るのなら、下記でいけると思います。

検索パターン 「,([0-9]{3}-[0-9]{4}) 」(最後に全角スペースあります)

置換パターン 「,\1,」

もし、EmEditorが繰り返しを使えないなら

検索パターン 「,([0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]) 」

置換パターン 「,\1,」


2 ● niwa-mikiho
●35ポイント

置換で置換元を

,(\d{3}-\d{4}) (.*?),

とし、置換先を

,\1,\2,

とするといかがでしょうか?

ただし条件として、同じ行にほかに 「3桁数字-4桁数字」 のデータがないことが条件です。


3 ● hard
●10ポイント

,XXX-XXXXYZZZZZZZZZ……,


という書式との事ですが、他に同じようにマッチする部分が出てこないように、

『XXX-XXXXYZZZZZZZZZ』の部分より前と後のコンマの数を数えます。

例えば、


ああ,いい,うう,ええ,おお,XXX-XXXXYZZZZZZZZZ,かか,きき


というような場合は、前に5個、後に2個コンマがあります。

このとき、

検索する文字列


^(([^,]*?,){5}\d{3}-\d{4}) ([^,]+?(,[^,]*?){2})$


置換後の文字列


\1,\3


とすれば、ご要望の通り置換できると思います。

数字の52の部分は、実際のファイルと見比べて変更してください。

ただし、サクラエディタでの動作確認しかしておらず、

EmEditorでは確認していません。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ