php中的通配符';s strps函数
我正在寻找一些与php中的通配符';s strps函数,php,wildcard,strpos,Php,Wildcard,Strpos,我正在寻找一些与preg\u replace或preg\u match中使用的通配符类似的strpos函数的通配符,但我找不到任何通配符,这里有一个想法: <?php if (strpos("The black\t\t\thorse", "black horse") === false) echo "Text NOT found."; else echo "Text found."; ?> 这里的想法是,结果是:找到文本。 有人知道吗?strpos()与模式不匹配,如果要匹
preg\u replace
或preg\u match
中使用的通配符类似的strpos
函数的通配符,但我找不到任何通配符,这里有一个想法:
<?php
if (strpos("The black\t\t\thorse", "black horse") === false)
echo "Text NOT found.";
else
echo "Text found.";
?>
这里的想法是,结果是:找到文本。
有人知道吗?strpos()与模式不匹配,如果要匹配模式,必须使用preg_match(),这应该适合您的情况
<?php
if (preg_match('/black[\s]+horse/', "The black\t\t\thorse"))
echo "Text found.";
else
echo "Text not found.";
?>
如果需要匹配的第一次出现,则可以使用PREG\u OFFSET\u CAPTURE标志:
preg_match('/black\shorse/i', "The black\t\t\thorse", $matches, PREG_OFFSET_CAPTURE);
var_dump($matches);
将导致
array(1) { [0]=> array(2) { [0]=> string(13) "black horse" [1]=> int(4) } }
如果$matches[0][1]是您的位置您找不到它,因为它不存在,
strpos
只进行精确匹配。如果需要通配符,就必须使用正则表达式。如果需要通配符,那么为什么不使用preg_match
呢?我使用strpos是因为我试图在一个文件中找到一个包含3行的代码块,并用另一个文本块替换,你知道一些简单的函数吗?我使用的是strpos,因为我试图在一个文件中找到一个3行的代码块,然后用另一个文本块替换,你知道一些简单的函数吗?
array(1) { [0]=> array(2) { [0]=> string(13) "black horse" [1]=> int(4) } }