Input text: school of engineering, school of medicine
Output required: school of education, school of education
Rule: any words followed by \'school of\' needs t
Sure thing, just use a positive lookbehind on school of
plus the space:(?<=school of )\w+
(?<=school of )
matches anything that comes after school of
and a space.\w
denotes any word character, and +
denotes between one and an unlimited number.So your code would be:
$inputext = "school of engineering, school of medicine";
$rule ="/(?<=school of )\w+/";
$replacetext = "education";
$outputext = preg_replace($rule, $replacetext, $inputext);
echo($outputext);
Which outputs:
school of education, school of education
This can be seen working on Regex101 here and 3val here.