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中cookies使用指南
Mar 16 PHP
php 各种应用乱码问题的解决方法
May 09 PHP
《PHP编程最快明白》第八讲:php启发和小结
Nov 01 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
Sep 05 PHP
优化PHP代码技巧的小结
Jun 02 PHP
PHP 常用数组内部函数(Array Functions)介绍
Jun 05 PHP
PHP代码优化的53个细节
Mar 03 PHP
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
May 15 PHP
浅析get与post的一些特殊情况
Jul 28 PHP
PHP中new static() 和 new self() 的区别介绍
Jan 09 PHP
PHP面向对象程序设计实例分析
Jan 26 PHP
PDO操作MySQL的基础教程(推荐)
Aug 18 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
虫族 Zerg 魔法科技
2020/03/14 星际争霸
大师制作的中短波矿石收音机
2020/04/02 无线电
一个简易需要注册的留言版程序
2006/10/09 PHP
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
2017/10/11 PHP
详解no input file specified 三种解决方法
2019/11/29 PHP
JScript内置对象Array中元素的删除方法
2007/03/08 Javascript
javascript判断用户浏览器插件安装情况的代码
2011/01/01 Javascript
js操作table元素实现表格行列新增、删除技巧总结
2015/11/18 Javascript
学习使用bootstrap基本控件(table、form、button)
2016/04/12 Javascript
jQuery DateTimePicker 日期和时间插件示例
2017/01/22 Javascript
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
Ionic项目中Native Camera的使用方法
2017/06/07 Javascript
JavaScript实现简单进度条效果
2020/03/25 Javascript
js实现纯前端压缩图片
2020/11/16 Javascript
python sqlobject(mysql)中文乱码解决方法
2008/11/14 Python
Windows下Python使用Pandas模块操作Excel文件的教程
2016/05/31 Python
python简单线程和协程学习心得(分享)
2017/06/14 Python
python操作xlsx文件的包openpyxl实例
2018/05/03 Python
对Python3.x版本print函数左右对齐详解
2018/12/22 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
2020/03/19 Python
Django模板标签{% for %}循环,获取制定条数据实例
2020/05/14 Python
美国知名眼镜网站:Target Optical
2020/04/04 全球购物
sort命令的作用和用法
2012/11/04 面试题
摄影助理岗位职责
2014/02/07 职场文书
QQ空间主人寄语大全
2014/04/12 职场文书
文明班集体申报材料
2014/05/23 职场文书
2014年学习厉行节约反对浪费思想汇报
2014/09/10 职场文书
镇政府副镇长群众路线专题民主生活会对照检查材料
2014/09/19 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
销售员工作检讨书(推荐篇)
2014/10/18 职场文书
新教师个人总结
2015/02/06 职场文书
MySQL query_cache_type 参数与使用详解
2021/07/01 MySQL
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python
python pygame 开发五子棋双人对弈
2022/05/02 Python