在 PHP 中出现子字符串之前删除最接近的单词


Remove closest word before occurrence of a substring in PHP

这是我试图弄清楚的一个例子。我有几个字符串,都说明了两种不同的情况。

案例1:营养学/营养学、健身和健康

案例2:大气科学/气象学

我想编写一个函数来删除"/"右侧的单词。因此,案例 1 和 2 将变成:

案例1(更改):营养学,健身和健康

案例2(变更):大气科学

不过,我发现这有点棘手,因为在一种情况下,它位于短语的开头,而在另一种情况下,它位于短语的末尾。

试试这个:

preg_replace( '#/[a-z]+#i', '', $string);

您可以在此处看到它有效。

它的作用是使用正则表达式查找后跟一个或多个字母字符的/。当它找到这一点时,它会用任何内容替换它('')。