в настоящее время у меня есть этот код:
// main title of product
$maintitle = 'CHICKENBUFFET HOT WINGS';
// take first word from $maintitle and put in new variable
list($title1) = explode(' ', $maintitle);
// words that start with CHICKEN are removed and put in new variable
$title2 = preg_replace('/(CHICKEN)\w+/', '', $maintitle);
// echo titles
echo $title1;
echo $title2;
Это работает нормально, однако я не хочу удалять слова, начинающиеся с CHICKEN, но слова, заканчивающиеся на BUFFET. Я думаю, что это связано с моим REGEX в строке preg_replace, но я не могу найти правильное выражение.
Спасибо заранее!
Попробуйте это регулярное выражение:
#\w+BUFFET#
Любое слово, оканчивающееся на BUFFET, будет совпадать.
<?php
// main title of product
$maintitle = 'CHICKENBUFFET HOT WINGS';
// take first word from $maintitle and put in new variable
list($title1) = explode(' ', $maintitle);
// words that start with CHICKEN are removed and put in new variable
$title2 = preg_replace('/\w+BUFFET/', '', $maintitle);
// echo titles
echo $title1."\n";
echo trim($title2);
Который будет выводить:
CHICKENBUFFET
HOT WINGS
Попробуйте это здесь: https://3v4l.org/FbMjk
Как вам нужно конец строки с BUFFET внести изменения, как показано ниже
$title2 = preg_replace('/\w+(BUFFET)/', '', $maintitle);
Полный код
$maintitle = 'CHICKENBUFFET HOT WINGS';
// take first word from $maintitle and put in new variable
list($title1) = explode(' ', $maintitle);
// words that start with CHICKEN are removed and put in new variable
$title2 = preg_replace('/\w+(BUFFET)/', '', $maintitle); // changed this line
// echo titles
echo $title1;
echo "<br/>";
echo $title2;