Maison  >  Article  >  développement back-end  >  Une méthode simple pour mettre en œuvre une correspondance régulière des provinces et des villes en PHP

Une méthode simple pour mettre en œuvre une correspondance régulière des provinces et des villes en PHP

不言
不言original
2018-04-13 11:50:362205parcourir

Cet article présente principalement la méthode PHP pour mettre en œuvre simplement une correspondance régulière des provinces et des villes, impliquant une correspondance régulière PHP, un jugement, un calcul et d'autres compétences opérationnelles connexes. Les amis dans le besoin peuvent s'y référer

Cet article. décrit PHP avec des exemples Une méthode simple pour mettre en œuvre une correspondance régulière des provinces et des villes. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Correspondance régulière de la province et de la ville

Copier le code Le code est le suivant :

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

Obtention du tableau des provinces et des villes

$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 : '',
];

Je pense qu'il devrait y avoir une meilleure façon, veuillez laisser un commentaire

PS : Voici 2 outils d'expressions régulières plus pratiques pour votre référence :

Outil de test en ligne d'expressions régulières JavaScript :
http://tools.jb51.net/regex/javascript

Outil de génération d'expressions régulières en ligne :

http://tools.jb51.net/regex/create_reg

Recommandations associées :

Les raisons et les solutions pour l'échec de l'expression régulière PHP à correspondre à tous les caractères

Expression régulière PHP (177 numéros de téléphone mobile ajoutés)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn