收貨地址智能解析
本項目包含2個功能
1. 把字符串解析成姓名、收貨電話、郵編、收貨地址
2. 把收貨地址解析成省、市、區(qū)縣、街道小區(qū)地址
在代購業(yè)務中,會經(jīng)常遇到,客戶把收貨信息(包含姓名,電話,收貨地址的字符串,往往還不會分開,會連在一起)發(fā)給代購,代購再到采購平臺下單,但是代購會把姓名,收貨地址這些信息分開復制,工作量會比較大。本項目正是可以實現(xiàn)收貨地址信息的智能解析,讓代理解雙手,讓代理愛上采購平臺。
該項目采用的是,統(tǒng)計特征分析,然后以最大的概率來匹配,得出大概率的解。因此只能解析中文的收貨信息,而且不能保證100%解析成功,但是從生產環(huán)境的使用情況來看,解析成功率保持在96%以上。

image
如果有什么問題或建議,可以
提交Github Issue
關于如何加入
如果有更好的思路,或者優(yōu)化建議,可以:
- fork該項目
- 提交Pull Requests
- 如果積極貢獻,可以放開權限
1. 把字符串解析成姓名、收貨電話、郵編、收貨地址
使用parse_prepare.php文件中的Address::smart_parse方法,該靜態(tài)方法接受字符串,返回數(shù)組。如:
Address::smart_parse('收貨人姓某某收貨地址:武侯區(qū)倪家橋路11號附2號 617000 136-3333-6666 ');
返回:
array(4) {
["name"]=> "姓某某"
["mobile"]=> "13633336666"
["postcode"]=>"617000"
["detail"]=>"武侯區(qū)倪家橋路11號附2號"
}
2. 把收貨地址解析成省、市、區(qū)縣、街道小區(qū)地址
使用parse_detail.php文件中的str)方法,該靜態(tài)方法接受字符串,同樣返回數(shù)組。但該文件要配合項目的的地址庫 area.sql 才能使用,如:
AddressDetail::detail_parse('成都市高新區(qū)天府軟件園B區(qū)科技大樓');
返回數(shù)組
array(3) {
[1]=>
array(2) {
["area_id"]=>
23
["area_name"]=>
"四川省"
}
[2]=>
array(2) {
["area_id"]=>
385
["area_name"]=>
"成都市"
}
[3]=>
array(2) {
["area_id"]=>
5100
["area_name"]=>
"高新區(qū)"
}
}
3. 聯(lián)系作者
- Email:pujiexuan@gmail.com
在github上查看源碼,立即使用
https://github.com/pupuk/address-smart-parse
謝謝你在實用的過程中,給一個小小的star