是的,PHP的preg_match
函数可以处理多行文本。为了实现这一点,你需要在正则表达式中使用s
(单行模式)修饰符,或者在模式的开头和结尾分别添加(?s)
和(?s:)
。这样,.
字符将匹配任何字符,包括换行符。
例如,以下代码将匹配多行文本中的所有单词hello
:
$text = "Hello, world!\nHello, everyone!";
$pattern = "/hello/s";
if (preg_match($pattern, $text, $matches)) {
echo "Found match: " . $matches[0];
} else {
echo "No match found.";
}
注意,这里的(?s)
修饰符被添加到了正则表达式的开头,这使得.
字符可以匹配换行符。