0

所以我有一个字符串如下

Continent | Country | Region | State | Area | Town

有时字符串是

Continent | Country | Region | State | Area

获取最后一个条目(即城镇或区域)的正则表达式是什么?

干杯

4

4 回答 4

4

不需要正则表达式!

$str = 'Continent|Country|Region|State|Area';

$exp = explode('|', $str);

echo end($exp);
于 2012-07-17T01:40:19.433 回答
2

以防万一有人确实想要正则表达式(也删除前面的空格):

$string = 'Continent | Country | Region | State | Area | Town';

preg_match('/[^|\s]+$/', $string, $last);
echo $last;
于 2012-07-17T01:46:15.850 回答
1

当您可以使用PHP 字符串函数实现相同功能时,我不会使用正则表达式:

$segments = explode(' | ', 'Continent | Country | Region | State | Area | Town');
echo end($segments);
于 2012-07-17T01:43:03.947 回答
1

这是另一个解决方案。

$str = 'Continent|Country|Region|State|Area';
$last = substr(strrchr($str,'|'),1);

请注意,这仅在有多个项目时才有效,否则 strrchr 将返回 false。

于 2012-07-17T01:47:10.117 回答