我需要删除所有出现的括号之间的文本,包括它们自己的行。删除所有出现的括号之间的文本,包括它们自己
我用了一段代码,这是值得,直到它出现一个以上的元素
$array[] = '[2016-12-26 16:48:57 +0100] pkgacct working dir : /cprsync_back3/tamainut';
$array[] = '[2016-12-26 16:48:57 +0100] Copying SSL certificates, CSRs, and keys...[2016-12-26 16:48:57 +0100] Done'
foreach ($array as &$line) {
$line = preg_replace("/\[[^)]+\]/","",$line);
echo $line.PHP_EOL;
}
这与第一线工作得很好,但不与第二线
pkgacct working dir : /cprsync_back3/tamainut
Done
什么只需提取[..]但保存这个[..]?
节约时,有字符串中是否匹配?也许'^(\ [([^)] +?)\])。*?\ 1(* SKIP)(* FAIL)|^\ [[^)] +?\]。 – chris85
Btw ['preg_replace'](http://php.net/manual/en/function.preg-replace.php)* subject *也可以是一个数组[如本演示中所示](https://eval.in/704883)。 –