php - 从字符串php中提取一些数据
问题描述
快速问题轻松剪断字符串。我知道 substr 但我不能在我的情况下使用它。
例如,我有这条丁字裤:“1 rue Maryse Bastie 69500 BRON”在这种情况下,我想说“在数字之前获取所有结尾”并获取数字。我想要不同变量中的城市和邮政编码。
我正在使用的 API 返回完整的地址,但我想删除以将城市和邮政编码保存在不同的表中。
我认为这个主题可以帮助我:Extracting a zip code from a address string but not to get the city。
例如,如果我有1 rue Maryse Bastie 69500 BRON
我想要 $city = "BRON" 和 $pc = "69500"
如果我有13 rue Hohwald 67000 Strasbourg
我想要 $city = "Strasbourg" 和 $pc = "67000"
谢谢
解决方案
我给你一个解决方法,它应该完全有效,但也许你必须改进它:
$test = '1 rue Maryse Bastie 69500 BRON';
\preg_match('/\b\d{4,5}.+$/i', $test, $out);
$output = \explode(' ', \trim($out[0]), 2);
var_dump($output);
/*
array(2) {
[0]=>
string(5) "69500"
[1]=>
string(4) "BRON"
}
*/
在上面的代码中,我们使用正则表达式来查找这种方式:
- 查找数字(许多字符 --> 4 或 5 五个法国邮政编码)
- 查找邮政编码旁边的所有字符,直到最后
接下来我们删除开头和结尾的空格,然后我们拆分成一个数组。
推荐阅读
- android-studio - 项目同步失败| 下载gradle失败|连接重置错误
- swift - 运行模拟器时没有打印坐标,但是当我在我的 iPhone 上运行程序时
- azure-active-directory - 按 ID 获取组
- shell - Jenkins 管道中的 shell 脚本是否异步运行?
- react-native - React Native:如何创建文本文件并将其保存到外部存储
- c# - 未经授权在 Microsoft Graph Api 中无法获取数据
- angularjs - 将 Angular 6 指令降级到 Angular 1.7
- android - 如何从mysql JDBC android studio中检索一列中的所有数据
- c# - XPath 包含“\r\n”在页面上找不到任何元素
- android - 未找到 Unity Admob 中介测试套件类