我有一个预匹配来查找单词 title 或 loan 的所有实例,但是任何人都可以帮我修改它以获取单词的所有实例,以及之前和之后的所有单词,并带有 . 作为停止的分隔符。
preg_match_all('#\b(title|loan)\b#',$html, $matches);
要么,要么在我正在寻找的单词之前说 10 个单词,然后说 10 个单词。
谢谢
我有一个预匹配来查找单词 title 或 loan 的所有实例,但是任何人都可以帮我修改它以获取单词的所有实例,以及之前和之后的所有单词,并带有 . 作为停止的分隔符。
preg_match_all('#\b(title|loan)\b#',$html, $matches);
要么,要么在我正在寻找的单词之前说 10 个单词,然后说 10 个单词。
谢谢
preg_match_all('#(?<pre>\w+) (title|loan) (?<post>\w+)#',$html, $matches);
title|loan
如果它们被空格分隔,将捕获之前和之后的单词。如果您需要更灵活的单词之间的界限,则可以轻松进行调整。
然后,您可以通过以下方式访问比赛:
foreach ($matches as $match)
{
echo $match['pre'];
echo $match['post'];
}
要匹配包含 的句点(句子)之间的所有内容title|loan
,您可以执行以下操作:
preg_match_all('#[^.]*(title|loan)[^.]*#', $html, $matches);
这将匹配之前和之后不是句点的所有字符title|loan
。