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程序中的常见漏洞进行攻击
Oct 09 PHP
php下检测字符串是否是utf8编码的代码
Jun 28 PHP
在JavaScript中调用php程序
Mar 09 PHP
学习php设计模式 php实现合成模式(composite)
Dec 08 PHP
PHP闭包函数详解
Feb 13 PHP
Zend Framework处理Json数据方法详解
Dec 09 PHP
php基于dom实现的图书xml格式数据示例
Feb 03 PHP
PHP正则删除HTML代码中宽高样式的方法
Jun 12 PHP
浅谈Laravel核心解读之Console内核
Dec 02 PHP
PHP连接及操作PostgreSQL数据库的方法详解
Jan 30 PHP
php中的钩子理解及应用实例分析
Aug 30 PHP
laravel excel 上传文件保存到本地服务器功能
Nov 14 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
main.php
2006/12/09 PHP
Windows2003 下 MySQL 数据库每天自动备份
2006/12/21 PHP
隐性调用php程序的方法
2009/03/09 PHP
php正则表达匹配中文问题分析小结
2012/03/25 PHP
php中数组首字符过滤功能代码
2012/07/31 PHP
ThinkPHP模板自定义标签使用方法
2014/06/26 PHP
php从文件夹随机读取文件的方法
2015/06/01 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
解析WordPress中的post_class与get_post_class函数
2016/01/04 PHP
php文件上传类的分享
2017/07/06 PHP
Nodejs极简入门教程(一):模块机制
2014/10/25 NodeJs
深入探密Javascript数组方法
2015/01/08 Javascript
JavaScript跨平台的开源框架NativeScript
2015/03/24 Javascript
基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)
2015/12/29 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
JS正则获取HTML元素的方法
2017/03/31 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
vue不通过路由直接获取url中参数的方法示例
2017/08/24 Javascript
详解Vue文档中几个易忽视部分的剖析
2018/03/24 Javascript
vue登录页面cookie的使用及页面跳转代码
2019/07/10 Javascript
JS回调函数深入理解
2019/10/16 Javascript
Vue的transition-group与Virtual Dom Diff算法的使用
2019/12/09 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
一个基于flask的web应用诞生 使用模板引擎和表单插件(2)
2017/04/11 Python
Python实现全排列的打印
2018/08/18 Python
解决python多行注释引发缩进错误的问题
2019/08/23 Python
Python读写文件模式和文件对象方法实例详解
2019/09/17 Python
解决python 执行shell命令无法获取返回值的问题
2020/12/05 Python
用CSS禁用输入法(CSS3 UI规范)实例解析
2012/12/04 HTML / CSS
html5基础标签(html5视频标签 html5新标签用法)
2013/12/30 HTML / CSS
手对手的教你用canvas画一个简单的海报的方法示例
2018/12/10 HTML / CSS
《手指教学》反思
2014/02/14 职场文书
百日安全活动总结
2014/05/04 职场文书
彩妆大赛策划方案
2014/05/13 职场文书
安全宣传标语口号
2014/06/06 职场文书
Python下opencv使用hough变换检测直线与圆
2021/06/18 Python