有没有办法在字符串中加入通配符?我问的原因是因为目前我有一个功能来搜索两个子串之间的子串(即在“我的狗有跳蚤”这句话中抓取“我的”和“有跳蚤”之间的内容,结果是“狗” ).
function get_string_between($string, $start, $end){
$string = " ".$string;
$ini = strpos($string,$start);
if ($ini == 0) return "";
$ini += strlen($start);
$len = strpos($string,$end,$ini) - $ini;
return substr($string,$ini,$len);
}
我想要做的是让它在字符串中使用通配符进行搜索。所以说我在“我的狗有跳蚤”这句话中搜索“%WILDCARD%”和“有跳蚤”——它仍然会输出“狗”。
我不知道我是否解释得太清楚了,但希望有人能理解我:P。非常感谢您的阅读!
最佳答案
这是正则表达式真正有用的少数情况之一。 :)
if (preg_match('/my (\w+) has/', $str, $matches)) {
echo $matches[1];
}
请参阅 preg_match 的文档.
关于Php搜索字符串(带通配符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2305362/