Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于匹配的php函数_Php_Match_Matching - Fatal编程技术网

用于匹配的php函数

用于匹配的php函数,php,match,matching,Php,Match,Matching,我正在寻找可执行此选项的功能: preg_match("/^{$STRING}/i", ...) 但是,如果没有正则表达式,并且第一个表达式中必须有^,这意味着该表达式将为false: $search = "hi", $search_in "ahi"; 它必须在字符串的开头。我不太清楚您的请求。。。但是试试这个: if(stripos($search_in, $search) === 0) { echo "matched"; } /** Checks if a target strin

我正在寻找可执行此选项的功能:

preg_match("/^{$STRING}/i", ...)
但是,如果没有正则表达式,并且第一个表达式中必须有^,这意味着该表达式将为false:

$search = "hi", $search_in "ahi";

它必须在字符串的开头。

我不太清楚您的请求。。。但是试试这个:

if(stripos($search_in, $search) === 0) {
  echo "matched";
}
/** Checks if a target string (haystack) starts with a specified string (needle) */
function startsWith($haystack, $needle) {
    return (stripos($haystack, $needle) === 0);
}

/* Usage */
startsWith("ahi", "hi"); // Returns FALSE
startsWith("ahi", "ah"); // Returns TRUE
请注意,您需要使用3=符号,因为当字符串中没有匹配项时,函数将返回false

if(stripos($search_in, $search) === 0) {
  echo "matched";
}
这方面的确切功能是。我不知道为什么最近每个人都这么热衷于stripos解决方案

尽管它需要字符串长度进行比较,并且对于正匹配结果必须求反

if (!strncasecmp($string, "search", 6)) {

优点是它实际上只比较前6个字符。它不搜索整个主题,需要在之后进行额外的比较。如果用作微优化,那就太愚蠢了。但这正是该任务的功能。

两条字符串都需要区分大小写strToLowerSubstr$haystack,0,strlen$Pineder===strtolower$Needer问题1:正则表达式有什么问题?问题2:你的意思是要在里面放花括号吗?有了花括号,你的正则表达式很可能会失效,可能使用$haystack、$Pineder、strlen$Pineer。
if (!strncasecmp($string, "search", 6)) {