我有一个包含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)
答案 0 :(得分:2)
您可以尝试正则表达式匹配,例如
if (preg_match('/^[A-Za-z]{4}(\d+)/', $k, $matches)) {
echo $matches[1];
}
这假设左边的 alpha 字符串只有4个字符(即模式中的{4}
)