PHP:
$x = preg_match (
'/^([.\\n\\r]*)\\n\\n/m',
"a\nb\nc\n\nd\ne\nf",
$m);
print "x=$x, m=";
print_r ($m);
此输出
x=0, m=Array (
)
我期待
x=1, m=Array (
[0] => a
b
c
d
e
f
[1] => a
b
c
)
我正在使用/m
修饰符。当捕获的字符串不包含新行时,变体会对此起作用。为什么它不能正常工作?
答案 0 :(得分:0)
尝试:
$x = preg_match (
'/^(.*)\n\n.*/sm',
"a\nb\nc\n\nd\ne\nf",
$m);
print "x=$x, m=";
print_r ($m);
你不需要所有逃脱加上你可以使用s修饰符来制作。匹配换行符。
以上输出你所期待的,无论它是否解决了你更广泛的问题,当然是另一回事 - 这是我对你想要做的最好的猜测。