preg_replace删除多个匹配项

| 我环顾四周,但找不到合适的解决方案。 我有这串
$area = array(\"Some Text area 1\", \"Some Text area 2\", \"Some Text area 33\", \"Some Text area 40\")
我想构造一个preg_replace,将删除单词“ area”和其后的1或2位数字。 我可以这样做以删除“区域1”
$area = preg_replace(\'/area 1/\',\'\', $area);
我可以继续重复此操作以删除其他匹配项,但效果不是很好。 我可以只用一个preg_replace删除模式吗? 提前致谢
已邀请:
$area = preg_replace(\'/area [0-9]+/\',\'\', $area);
将删除所有带有文字“'area \',后跟数字的匹配项。
指定至少一位数字:
preg_replace(\'/area [0-9]+/\',\'\', $area);
您是否还想删除单词“ area”之前的空格?该代码是:
$area = preg_replace(\'/ area \\d+/\', \'\', $area);
在搜索类似内容时遇到了这篇文章:替换文本字符串中的多个术语。 因此,例如,我正在进行一个自动生成的下拉选择,并且这些选项基于文件名,因此我需要加载文件名并生成易于阅读的文件名。 我的文件名为:temp_Event_Name.php 因此,我必须删除\“ temp \”,\“ _ \”和\“。php \”,以便有一个可选选项,该值是要传递到后续格式的文件名,使用该文件生成PDF。
<select>
 <option value=\"temp_Event_Name_2011.php\">Event 1</option>
 <option value=\"temp_Event_Name_2012.php\">Event 2</option>
</select
我发现是使用
str_replace
。 因此完整的代码将是:
$i = 0;
foreach( $files as $d ){
    $file_and_name .= \'<option value=\"\'.$files[$i].\'\">\'.str_replace(\'temp\',\'\',str_replace(\'_\',\' \',str_replace(\'.php\',\'\',$d) ) ).\"</option>\\n\";
    $i++;
}
哪里 $ files是包含文件名的数组,我通过以下方式获得了文件名:
$files = array();
$files = glob(\"temp_*.php\");
显然,需要额外的格式才能将其放入我建议的html中,但这很容易。希望它对@jamester或遇到此问题的其他人有所帮助。

要回复问题请先登录注册