当前位置: 首页 > 面试题库 >

如何使strpos不区分大小写

谈桐
2023-03-14
问题内容

如何更改strpos以使其不区分大小写。原因是如果的名称product->nameMadBike ,而搜索字词是 bike
,则该链接不会向我显示。我主要关心的是代码的速度。

<?php
$xml  = simplexml_load_file('test.xml');
$searchterm = "bike";
foreach ($xml->product as $product) {
if (strpos($product->name, $searchterm) !== false ) {
echo $product->link;
} }
?>

问题答案:

您正在寻找 stripos()

如果您无法使用该功能,则只需先调用strtolower()两个字符串即可。

编辑

stripos() 如果要查找带有变音符号的子字符串,将无法正常工作。

例如:

stripos("Leży Jerzy na wieży i nie wierzy, że na wieży leży dużo JEŻY","jeży");返回false,但应该返回int(68)



 类似资料:
  • 问题内容: 默认情况下,单词“ Word”和“ word”不相同。如何使Lucene不区分大小写? 问题答案: 最简单的方法是降低所有可搜索的内容以及查询的大小写。请参阅 文档。您也可以将查询用于不区分大小写的搜索,因为它绕过了。 如果需要,您可以将内容存储在不同的字段中以捕获不同的案例配置。

  • 考虑: 我试图在每边只显示100个字符,中间是搜索字符串。 这段代码实际上可以工作,但它是区分大小写的。如何使其不区分大小写?

  • 问题内容: 考虑: 我正在尝试仅在每边显示100个字符,并在中间显示搜索字符串。 该代码实际上有效,但是区分大小写。如何使其不区分大小写? 问题答案: 只需 在定界符后添加修饰符即可: 如果 设置了修饰符,则模式中的字母将同时匹配大写和小写字母。

  • 我试图使字典的大小写不敏感。但是,我宣布它是一种财产,我怎么能让它变得不敏感呢。 我知道在定义时,我可以像这样使用它: 但是,我在接口和类中分别定义了它,比如 我怎么能让这个案子变得麻木不仁呢?

  • 我想让用户选择进行区分大小写或不区分大小写的搜索。 我的想法是使用区分大小写的分析器对数据进行索引,然后根据用户输入使用区分大小写或不区分大小写的分析器进行搜索。 因此,我创建了区分大小写的分析器,下面是我的简单代码: 对于索引,我使用了以下方法: 对于搜索,我使用: 当我对此感到厌倦时,敏感的案例起了作用,但不敏感的案例没有起作用。 经过更多的研究,我发现使用区分大小写的分析器和低关注度的查询是