Выбрать подстроку в контексте
Помоги разобраться :)
Есть две строки:
1. "Lesnix - это тот же самый лесник, только заканчивается на букву икс"
2. "самый лесник"
Как видите строка 2 является частью строки 1. Необходимо выбрать часть строки 1 начиная за 8 символов до строки 2, строку 2, а затем 8 символов после строки 2.
То есть:
Код:
$str1="Lesnix - это тот же самый лесник, только заканчивается на букву икс";
$str2="самый лесник";
echo("...".foo($str1,$str2,8, 8 )."...");
$str2="самый лесник";
echo("...".foo($str1,$str2,8, 8 )."...");
В нашем случае должно быть выведено: "... тот же самый лесник, только..."
Напишите функцию foo() наиболее рациональным способом
...или, может быть, замечательный язык PHP уже содержит такую или подобную функцию ?
Код:
<?php
$str1="Lesnix - это тот же самый лесник, только заканчивается на букву икс";
$str2="самый лесник";
function foo($str1,$str2,$n1,$n2) {
$p=strpos($str1,$str2);
if ($p) {
return(substr($str1,$p-8,strlen($str2)+16));
}
return("");
}
echo("...".foo($str1,$str2,8,8)."...");
?>
$str1="Lesnix - это тот же самый лесник, только заканчивается на букву икс";
$str2="самый лесник";
function foo($str1,$str2,$n1,$n2) {
$p=strpos($str1,$str2);
if ($p) {
return(substr($str1,$p-8,strlen($str2)+16));
}
return("");
}
echo("...".foo($str1,$str2,8,8)."...");
?>
Просто пытаюсь избежать переписывания уже существующих функций.
Спасибо за помощь.