k_ikiの雑記帳

DTPのこと、創作のことなど、思いつくまま

都道府県に続けてタブを追加

行頭が都道府県名で始まる住所の、都道府県名までとそれ以降との間にタブを追加。
^(.+?[都道府県])
で検索したら酷い目に遭った。
当たり前だよね。
都府 は 京都(タブ)府〜 になってしまう。
京都だけ気をつければ良さそうだけど、それだと実はちょっとまずい。
東京都と広島県には中市があるし、全国にはの文字から始まる市や郡もあるのだ。
そこで、全国に4つしかない都・道・府を先に処理してから県を処理することに。
 

while line = ARGF.gets
	line.gsub!(/^(東京|北海|京都|大阪)([都道府])(.+)/) {"#{$1}#{$2}\t#{$3}"}
	line.gsub!(/^(.{2,3})(.+)/) {"#{$1}\t#{$2}"}
	print line
end

 
2010年11月09日追記:
 都・道・府を先に処理すませておけば、二行目は
 ^(.+?県)
 で問題ないんだけど、まあいいやw