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


Posted in PHP onApril 13, 2018

本文实例讲述了PHP简单实现正则匹配省市区的方法。分享给大家供大家参考,具体如下:

省市区正则匹配

preg_match('/(.*?(省|自治区|北京市|天津市))+(.*?(市|自治州|地区|区划|县))+(.*?(区|县|镇|乡|街道))/', $address, $matches);

获得省市区数组

$address = '广东省深圳市南山区';
preg_match('/(.*?(省|自治区|北京市|天津市))/', $address, $matches);
if (count($matches) > 1) {
  $province = $matches[count($matches) - 2];
  $address = str_replace($province, '', $address);
}
preg_match('/(.*?(市|自治州|地区|区划|县))/', $address, $matches);
if (count($matches) > 1) {
  $city = $matches[count($matches) - 2];
  $address = str_replace($city, '', $address);
}
preg_match('/(.*?(区|县|镇|乡|街道))/', $address, $matches);
if (count($matches) > 1) {
  $area = $matches[count($matches) - 2];
  $address = str_replace($area, '', $address);
}
return [
  'province' => isset($province) ? $province : '',
  'city' => isset($city) ? $city : '',
  'area' => isset($area) ? $area : '',
];

感觉应该还有更好的方法,欢迎评论留言

PHP 相关文章推荐
PHP在Web开发领域的优势
Oct 09 PHP
实现php加速的eAccelerator dll支持文件打包下载
Sep 30 PHP
简单示例AJAX结合PHP代码实现登录效果代码
Jul 25 PHP
php for 循环语句使用方法详细说明
May 09 PHP
PHP网站备份程序代码分享
Jun 10 PHP
PHP针对常规模板引擎中与CSS/JSON冲突的解决方法
Aug 19 PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 PHP
php版阿里云OSS图片上传类详解
Dec 01 PHP
PHPMailer发送邮件
Dec 28 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
PHP回调函数概念与用法实例分析
Nov 03 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
PHP编程实现的TCP服务端和客户端功能示例
Apr 13 #PHP
php框架CodeIgniter使用redis的方法分析
Apr 13 #PHP
php 字符串中是否包含指定字符串的多种方法
Apr 12 #PHP
ThinkPHP框架使用redirect实现页面重定向的方法实例分析
Apr 12 #PHP
PHP实现的mongoDB数据库操作类完整实例
Apr 10 #PHP
PHP实现的简单组词算法示例
Apr 10 #PHP
PHP实现的大文件切割与合并功能示例
Apr 10 #PHP
You might like
PHP基于imap获取邮件实例
2014/11/11 PHP
PHP实现的简单AES加密解密算法实例
2017/05/29 PHP
PHPExcel 修改已存在Excel的方法
2018/05/03 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
php生成HTML文件的类方法
2019/10/11 PHP
Jquery读取URL参数小例子
2013/08/30 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
2015/04/16 Javascript
jquery实现input框获取焦点的简单实例
2017/01/26 Javascript
Vue实现选择城市功能
2017/05/27 Javascript
原生JS上传大文件显示进度条 php上传文件代码
2020/03/27 Javascript
关于Layui Table隐藏列问题
2019/09/16 Javascript
js实现烟花特效
2020/03/02 Javascript
Python 实现链表实例代码
2017/04/07 Python
Python之str操作方法(详解)
2017/06/19 Python
Python编程实现及时获取新邮件的方法示例
2017/08/10 Python
微信跳一跳python代码实现
2018/01/05 Python
python实现将读入的多维list转为一维list的方法
2018/06/28 Python
Linux系统(CentOS)下python2.7.10安装
2018/09/26 Python
Python进阶之@property动态属性的实现
2019/04/01 Python
python批量下载抖音视频
2019/06/17 Python
在Python中append以及extend返回None的例子
2019/07/20 Python
Numpy中对向量、矩阵的使用详解
2019/10/29 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
Python PyQt5模块实现窗口GUI界面代码实例
2020/05/12 Python
Django中Q查询及Q()对象 F查询及F()对象用法
2020/07/09 Python
CSS3实现渐变背景兼容问题
2020/05/06 HTML / CSS
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
2012/12/09 HTML / CSS
沙特阿拉伯家用电器和电子产品购物网站:Sheta and Saif
2020/04/03 全球购物
材料物理专业个人求职信
2013/12/15 职场文书
音乐专业自荐信
2014/02/07 职场文书
总经理助理的职责
2014/03/14 职场文书
2016年离婚协议书范文
2016/03/18 职场文书
分析SQL窗口函数之取值窗口函数
2022/04/21 Oracle
彻底卸载VMware虚拟机的超详细步骤记录
2022/07/15 Servers