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

正規表現に詳しい方におたずねします。
[都道府県][市区町村]
を、
[都道府県],[市区町村]
のように置換したいと思います。

例えば、
東京都千代田区 → 東京都,千代田区
北海道札幌市 → 北海道,札幌市
沖縄県那覇市 → 沖縄県,那覇市
のようにです。

置換元と置換先の正規表現はどのようになるでしょうか。
使用するのは、EmEditorです。


●質問者: crashtruck5
●カテゴリ:コンピュータ 学習・教育
✍キーワード:EmEditor 北海道 千代田区 札幌市 東京都
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● uehara_delta
●19ポイント

EmEditorの正規表現はよく知りませんが、

(.+[都道府県])(.+) という正規表現にマッチさせて

\1,\2 に置換すればよいのではないでしょうか?

◎質問者からの返答

これですと、例えば「甲府」の後にも半角コンマが入ってしまうのです。


2 ● takepierrot
●19ポイント

当方、サクラエディタ&秀丸エディタを使っていますが、正規表現の仕様にそこまで大きな違いはないと思い、回答致します。

▼検索文字列

([都道府県])

▼置換文字列

\1,

以上でどうでしょうか。

ダメだったときはctrl-Zで勘弁していただけると幸いです。

◎質問者からの返答

これですと、例えば「甲府」の後にも半角コンマが入ってしまうのです。


3 ● uehara_delta
●18ポイント

(.+?[都道府県])(.+)ではどうでしょうか?


4 ● drenchien
●18ポイント

愚直なようですが、次のようにするのが結局は一番いいように思います。

置換メニューにて

検索する文字列(I):

(北海道|青森県|岩手県|宮城県|秋田県|山形県|福島県|茨城県|栃木県|群馬県|埼玉県|千葉県|東京都|神奈川県|新潟県|富山県|石川県|福井県|山梨県|長野県|岐阜県|静岡県|愛知県|三重県|滋賀県|京都府|大阪府|兵庫県|奈良県|和歌山県|鳥取県|島根県|岡山県|広島県|山口県|徳島県|香川県|愛媛県|高知県|福岡県|佐賀県|長崎県|熊本県|大分県|宮崎県|鹿児島県|沖縄県)

置換後の文字列(P):

\1,

[?]正規表現を使用する(X)

都 道 府 県 のいずれかの文字を含む市町村名は、この四文字いずれについても存在していますので、"[都道府県]"という正規表現だけで区切りを判断しようというアプローチは、例外をいくつか考えなければならないため、あまり筋がよいとは思えないからです。日本の現在の都道府県名に限るのであれば、たかだか47個ですから、結局は列挙したほうがはやいのではないかと考える次第です。

なお、上記の正規表現の、動作確認に使ったデータを添えておきます。(「現在使われている」「市名」に限ってみても、都道府県を名称に含むものがいくつかあるとおわかり頂けると思います)

北海道札幌市

北海道北広島市

栃木県宇都宮市

埼玉県さいたま市

千葉県四街道市

東京都府中市

神奈川県茅ヶ崎市

山梨県甲府市

山梨県都留市

愛知県大府市

岐阜県山県市

奈良県大和高田市

大阪府枚方市

京都府京都市

京都府長岡京市

広島県尾道市

山口県防府市

宮崎県都城市

宮崎県西都市

鹿児島県いちき串木野市

沖縄県那覇市


5 ● takepierrot
●18ポイント

すいませんでした! たしかにおっしゃるとおりですね。というわけで代替案を考えてみました。

もし、都道府県名の前がタブで区切られているのであれば(「\t東京都新宿区」といったような形ですね)、

▼検索文字列

(?>=\t)(.{2,3}[都道府県])

とすると今度は「甲府市」のあとに「,」が入ることはないと思います。もし、タブではなくカンマ区切りでしたら(「,東京都新宿区」という形です)、「\t」は「,」に替えていただくとよいです。

都道府県名がエディタの行頭にくるのであれば、

▼検索文字列

^(.{2,3}[都道府県])

でいけるかと思います。

ちなみに置換文字列は、どちらも先ほどの回答と同じ「\1-」で大丈夫です。

どのような条件下で置換を行われるかがわかりませんので、勝手に特定の条件を想定して回答してしまいましたが、参考になりますでしょうか?


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



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