从左侧和左侧删除字符串在PHP中动态更改字符串

时间:2013-12-27 04:04:05

标签: php string trim substr

我有一个包含100多个动态更改键的数组。

([chap1e1], [chap1m1], [chap1h1], ..., [chap100e1], [chap100m1], [chap100h1], ...)

我使用以下内容从左侧删除字符串&获得动态数字变化的权利(即1 - 100 - ......)。但是在这里,右边我需要删除的是最后两个字符。

foreach ($_POST as $k => $v) {    
    $unit = substr(substr($k, 4), 1, -2);
    echo $unit;
}

但逻辑似乎一直有效,直到数字为(一位数)。

是否有任何替代方法可以从左侧和左侧进行动态修剪。对?请提出任何想法。谢谢!

使用substr()

的解决方案
$unit = substr(substr($k, 4), 0, -2)

1 个答案:

答案 0 :(得分:2)

您可以尝试正则表达式匹配,例如

if (preg_match('/^[A-Za-z]{4}(\d+)/', $k, $matches)) {
    echo $matches[1];
}

这假设左边的 alpha 字符串只有4个字符(即模式中的{4}