Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 正则表达式:在字符之间选择多行_Php_Regex - Fatal编程技术网

Php 正则表达式:在字符之间选择多行

Php 正则表达式:在字符之间选择多行,php,regex,Php,Regex,我无法在正则表达式的两个字符之间选择多行。 我怎样才能解决这个问题 { example example 1 } 我想选择“示例”。但我不能 我试过这个正则表达式 #\n.*# 谢谢你你的模式没有达到你的预期;它匹配换行符后跟除换行符“零次或多次”以外的任何字符的次数。您需要使用s(dotall)修饰符,强制点在换行序列中匹配 例如,匹配两个大括号之间的所有内容 preg_match('/{(.*)}/s', $str, $match); echo $match[1]; 文本模式\n.*?那

我无法在正则表达式的两个字符之间选择多行。 我怎样才能解决这个问题

{
example
example 1
}
我想选择“示例”。但我不能

我试过这个正则表达式

#\n.*#

谢谢你

你的模式没有达到你的预期;它匹配换行符后跟除换行符“零次或多次”以外的任何字符的次数。您需要使用
s
(dotall)修饰符,强制点在换行序列中匹配

例如,匹配两个大括号之间的所有内容

preg_match('/{(.*)}/s', $str, $match);
echo $match[1];
文本模式
\n.*
?那是。。。举个例子,你根本不想做你想做的事。在本例中,我怀疑您在
\n
之前缺少
\r
。要抓住“示例”,请参见
{\s*([^\n]+)