我想检查字符串'client'中是否存在搜索关键字'cli'或'ent'或'cl'字,并且不区分大小写。我使用preg_match函数和'\ bclient \ b'模式。但它没有显示正确的结果。找不到匹配错误。
请任何人帮忙
由于
答案 0 :(得分:2)
我不会为此使用正则表达式,这是常规字符串函数就足够的额外开销和复杂性。为什么不选择stripos()呢?
$str = 'client';
$terms = array('cli','ent','cl');
foreach($terms as $t) {
if (stripos($str,$t) !== false) {
echo "$t exists in $str";
break;
}
}
答案 1 :(得分:0)
尝试模式/cli?|ent/
说明:
cli匹配第一部分。我?在搜索中使i成为可选项。
|
表示或匹配cli
或ent
。
答案 2 :(得分:0)
\b
是字边界,与cli
中的client
不匹配,您需要删除\b