在 php 中不区分大小写突出显示而不更改单词本身

case insensitive highlighting in php without changing the word itself

我一直在解决这个问题。 (我在这里搜索了答案。有一些,但不完全是我需要的,这就是我单独创建这个问题的原因。抱歉,如果它是重复的)。

我有一句话:

"There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form".

另外我有两个词,提供小写:

Word1: lorem

Word2: ipsum

我需要在句子 $text 中搜索 $word1$word2,突出显示给定句子中的那些词(将它们设为粗体),而不更改替换词的大小写.

在我的示例中,我需要我的结果是:

"... Lorem Ipsum ... ", but not "... lorem ipsum ...".

同样,例如,如果Word1 = "Lorem"并且提供文本中的那个单词是小写的,我只想将文本中的小写单词加粗,而不是大写。

如有任何帮助,我将不胜感激!

提前致谢!!!

首先使用ucfirst($str),然后进行字符串搜索并转换为粗体。

$word1 = ucfirst($word1);
$word2 = ucfirst($word2);

或者,您可以使用 stripos($sentence, $word) 进行不区分大小写的搜索来获取单词的位置,然后将该位置的内容转换为加粗的 $word 的长度 tags/style 附加标签

希望这就是您要找的。