3 回答
TA贡献1812条经验 获得超5个赞
使用#而不是/你不必逃避它们。
该修改 s使得.与\s包括换行符。
{并}具有从n到m倍的各种功能{n,m}。
基础的
preg_match('#\\{FINDME\\}(.+)\\{/FINDME\\}#s',$out,$matches);
各种标签的高级等(javascript的样式不是很好)。
$delimiter = '#';
$startTag = '{FINDME}';
$endTag = '{/FINDME}';
$regex = $delimiter . preg_quote($startTag, $delimiter)
. '(.*?)'
. preg_quote($endTag, $delimiter)
. $delimiter
. 's';
preg_match($regex,$out,$matches);
将此代码放在一个函数中
对于任何你不想使用任何流浪的 PHP代码的文件,你应该使用file_get_contents。include / require甚至不应该是一个选项。
TA贡献1936条经验 获得超6个赞
您也可以使用substr和strpos。
$startsAt = strpos($out, "{FINDME}") + strlen("{FINDME}");
$endsAt = strpos($out, "{/FINDME}", $startsAt);
$result = substr($out, $startsAt, $endsAt - $startsAt);
您需要添加错误检查以处理它不是FINDME的情况。
- 3 回答
- 0 关注
- 1184 浏览
添加回答
举报