php - 将截断数组中字符串的函数是什么?

标签 php arrays

我对 PHP 还很陌生,我在手册中找不到这个,因为我不确定该函数的名称。我有一个包含这些值的数组:

$files[] = 

[0] => 01_Nhemamusasa.mp3 
[1] => 02_Kari_Mudande.mp3 
[2] => 03_Chikende.mp3 
[3] => 04_Karinge_Zuva.mp3 
[4] => 05_Mbirimo.mp3 
[5] => 06_Muchenjedza_Mutonga.mp3 
[6] => 07_Skokianna.mp3 
[7] => 08_Mbavarira.mp3

我需要做的是截断内容以删除 _ 之前的部分并删除文件类型。我还想将数组 [1] 和 [5] (在本例中)中间找到的下划线转换为空格。换句话说,我需要将这些文件名转换为歌曲实际名称的数组。

感谢您的帮助!

编辑:我的主机使用的是 PHP 5.2.12

最佳答案

结合使用 array_map()、preg_replace() 和 str_replace():

$array = array(...);

$array = array_map(function($item) {
    return str_replace('_', ' ', preg_replace('#^\d+_(.*?)\.[a-z0-9]{2,6}$#i', '$1', $item));
}, $array);

print_r($array);

关于php - 将截断数组中字符串的函数是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3516641/

相关文章:

python - 将制表符分隔的 csv 读入具有不同数据类型的 numpy 数组

c - 排序并从 c 中的 int 数组中删除重复项

PHP 从目录中提取特定的图像集

php - 使用 .png、.gif 或 .jpg 为 .png、.gif 或 .jpg 加水印

php - 输入被重复

检查 C 编程代码

python - 从元组数组中获取 numpy 数组

php - 从mysql数据库获取后在php中更改字符串

PHP, MySQL 如何对两个不同日期范围内的数据求和

arrays - PowerShell:修改数组的元素