查找字符串中最后一位的位置

时间:2013-05-08 23:38:42

标签: php regex preg-replace

我正在尝试格式化一些数字牌 - 我需要找到字符串中的最后一位数字并在其后面添加一个空格,例如。

T4MAX  = T4 MAX
T53TES = T53 TES

我假设我必须使用preg_replace - 我已经尝试了下面的方法来找到最后一位数的字符串中的位置,但它返回一个空数组。

preg_match('/(0-9])/', $plate, $matches, PREG_OFFSET_CAPTURE);

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

这很简单:

$str = 'T4MAX';

$str_with_space = preg_replace('~\d(?=\D*$)~', '$0 ', $str);

在线演示:http://ideone.com/Mqqqsh

正则表达式解释:

~\d(?=\D*$)~表达意味着 - 任何数字\d后面跟着字符串末尾不是数字\D的任何内容。