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操作mysql函数详解,mysql和php交互函数
May 19 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
Feb 17 PHP
解析PHP跨站刷票的实现代码
Jun 18 PHP
Thinkphp将二维数组变为标签适用的一维数组方法总结
Oct 30 PHP
ajax+php控制所有后台函数调用
Jul 15 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 PHP
php抓取网站图片并保存的实现方法
Oct 29 PHP
PHP文件操作实例总结
Sep 27 PHP
PHP用户注册邮件激活账户的实现代码
May 31 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
Jun 11 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
Dec 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
PHP3 safe_mode 失效漏洞
2006/10/09 PHP
php 上传功能实例代码
2010/04/13 PHP
php文件打包 下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
2012/06/13 PHP
PHP中的use关键字概述
2014/07/23 PHP
PHP实现阳历到农历转换的类实例
2015/03/07 PHP
php通过获取头信息判断图片类型的方法
2015/06/26 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
2017/05/20 PHP
php5与php7的区别点总结
2019/10/11 PHP
Mootools 1.2教程 排序类和方法简介
2009/09/15 Javascript
js 连接数据库如何操作数据库中的数据
2012/11/23 Javascript
jquery win 7透明弹出层效果的简单代码
2013/08/06 Javascript
js加入收藏以及使用Jquery更改透明度
2014/01/26 Javascript
jquery获取复选框被选中的值
2014/04/10 Javascript
JavaScript也谈内存优化
2014/06/06 Javascript
js HTML5多媒体影音播放
2016/10/17 Javascript
NodeJS爬虫实例之糗事百科
2017/12/14 NodeJs
AngularJS对动态增加的DOM实现ng-keyup事件示例
2018/03/12 Javascript
JS实现简单随机3D骰子
2019/10/24 Javascript
vue 组件销毁并重置的实现
2020/01/13 Javascript
python检测远程服务器tcp端口的方法
2015/03/14 Python
Python3之不使用第三方变量,实现交换两个变量的值
2019/06/26 Python
Python+PyQt5实现灭霸响指功能
2020/05/25 Python
使用python实现下载我们想听的歌曲,速度超快
2020/07/09 Python
澳大利亚儿童精品仓库:Goo & Co.
2019/06/20 全球购物
乌克兰在线药房:Аптека24
2019/10/30 全球购物
决心书标准格式
2014/03/11 职场文书
经典团队口号大全
2014/06/21 职场文书
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
陕西导游词
2015/02/04 职场文书
校长新学期寄语2016
2015/12/04 职场文书
如何理解Vue简单状态管理之store模式
2021/05/15 Vue.js
python中的None与NULL用法说明
2021/05/25 Python
Python 可迭代对象 iterable的具体使用
2021/08/07 Python
css常用字体属性与背景属性介绍
2022/02/28 HTML / CSS
试用1103暨1103、1101同门大比武 [ DAIWEI ]
2022/04/05 无线电
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers