• 售前

  • 售后

热门帖子
入门百科

PHP简朴实现正则匹配省市区的方法

[复制链接]
醉于山水 显示全部楼层 发表于 2021-10-25 19:29:06 |阅读模式 打印 上一主题 下一主题
本文实例报告了PHP简单实现正则匹配省市区的方法。分享给大家供大家参考,具体如下:
省市区正则匹配
复制代码 代码如下:preg_match('/(.*?(省|自治区|北京市|天津市))+(.*?(市|自治州|地域|区划|县))+(.*?(区|县|镇|乡|街道))/', $address, $matches);
得到省市区数组
  1. $address = '广东省深圳市南山区';
  2. preg_match('/(.*?(省|自治区|北京市|天津市))/', $address, $matches);
  3. if (count($matches) > 1) {
  4.   $province = $matches[count($matches) - 2];
  5.   $address = str_replace($province, '', $address);
  6. }
  7. preg_match('/(.*?(市|自治州|地区|区划|县))/', $address, $matches);
  8. if (count($matches) > 1) {
  9.   $city = $matches[count($matches) - 2];
  10.   $address = str_replace($city, '', $address);
  11. }
  12. preg_match('/(.*?(区|县|镇|乡|街道))/', $address, $matches);
  13. if (count($matches) > 1) {
  14.   $area = $matches[count($matches) - 2];
  15.   $address = str_replace($area, '', $address);
  16. }
  17. return [
  18.   'province' => isset($province) ? $province : '',
  19.   'city' => isset($city) ? $city : '',
  20.   'area' => isset($area) ? $area : '',
  21. ];
复制代码
感觉应该尚有更好的方法,接待评论留言
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
更多关于PHP相关内容感爱好的读者可查看本站专题:《php正则表达式用法总结》、《PHP数组(Array)操纵技巧大全》、《PHP根本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操纵入门教程》及《php常见数据库操纵技巧汇总》
盼望本文所述对大家PHP程序操持有所帮助。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作