从字符串php提取一些数据

问题描述 投票:-1回答:1

快速提问,轻松剪断绳子。我知道substr,但是我不能使用它。

例如,我有这样的丁字裤:“ 1 rue Maryse Bastie 69500 BRON”在这种情况下,我想说“在数字前得到所有结尾”并得到数字。我想要差异变量中的城市和邮政编码。

我正在使用的API返回了完整的地址,但我想删除以将城市和邮政编码保存在另一个表中。

我认为该主题可以帮助我:Extracting a zip code from an address string,但不能到达城市。

例如,如果我有1 rue Maryse Bastie 69500 BRON我想要$ city =“ BRON”和$ pc =“ BRON”如果我有13 rue Hohwald 67000斯特拉斯堡我想要$ city =“史特拉斯堡”和$ pc =“ 67000”

谢谢

php extract
1个回答
0
投票

我给您一个解决方法,它应该完全可以工作,但是也许您需要改进它:

$test = '1 rue Maryse Bastie 69500 BRON';
\preg_match('/ \b\d+.+$/i', $test, $out);
$output = \explode(' ', \trim($out[0]));
var_dump($output);
/*
array(2) {
  [0]=>
  string(5) "69500"
  [1]=>
  string(4) "BRON"
}
*/

在上面的代码中,我们使用正则表达式来找到这种方式:

  • 留出空格数字(许多字符->法语邮政编码为4或5五个)]
  • 在邮政编码旁边找到所有字符,直到结尾

接下来,我们在开头和结尾处删除空格,然后将其拆分为一个数组。

© www.soinside.com 2019 - 2024. All rights reserved.