I just answered a question here,這讓我問自己的問題。我可以使用preg_replace去除多行模式下的尾部 n嗎?
基本上,OP想要刪除任何行,如果它包含一個字符串。這裏是我想出了一個正則表達式...
$str = preg_replace('/^.*\b["(]?hello["(]?\b.*$/m', '', $str);
它的偉大工程,但更換時,因爲$
比賽後\n
之前,他們仍然有空白行,例如
string(90) "
What it shouldhello do is:
could be words in between brackets and inverted commas also."
,因爲我在多模式(至少我是這樣認爲),我不能使用\z
。
如果我使用s
修飾符,那麼.
會變得太貪婪,並且不能跨越換行符。
我試了幾件事(如[^\n]
和[\s\S]
),現在我很難過。
我該如何在尾部\n
這裏匹配所以它被刪除與替換?
謝謝。
除了這將錯過最後一行,如果它有你好在其中:S – Jacob 2011-03-21 13:26:59
爲+1,我想我太* * * * *爲我自己的好:) – alex 2011-03-21 13:32:05