Re: [问题] 县市合并升格地址替换问题

楼主: imcar (imcar)   2011-03-14 13:01:01
※ 引述《imce (蜥蜴)》之铭言:
: 台北县新店市OO路OO号 (一般会写这样)
: 台北县瑞芳镇XX路XX号 (台不是台)
: 台北县 林口乡UU路UU号 (多一个空格)
: 台北县五股工业区MM路MM号 (没有乡镇市,不理会)
: 有办法一句话替换成[新北市某某区]某某路某某号
: 我是用perl的,我想让$1="台北县",$2="市" or "镇"
: 然后把$1置换新北市$2换成区
我用php写,方法应该差不多
<?php
mb_internal_encoding("UTF8");
mb_regex_encoding("UTF8");
function gsub($str){
return $str = mb_ereg_replace("台","台", $str);
}
function is_match($str){
$pattern='^(.{3,5})?(台北|台中|台南|高雄)县';
return mb_ereg_match($pattern,$str)==1 ? "1" : "0" ;
}
function mb_fix_addr($str){
$pattern=array('^(.{3,5})?台北县','^(.{3,5})?(..)县','^(.*市)?(.{2,5}?)[镇|
乡|市]','(.*)?村');
$replacement=array('\\1新北市','\\1\\2市','\\1\\2区','\\1里');
for ($i=0; $i<sizeof($pattern); $i++) {
$str = mb_ereg_replace($pattern[$i], $replacement[$i], $str);
}
return $str;
}
?>

Links booklink

Contact Us: admin [ a t ] ucptt.com