Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.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_Regex_Preg Match - Fatal编程技术网

Php 如何检查某个字符串是否位于字符串的开头?

Php 如何检查某个字符串是否位于字符串的开头?,php,regex,preg-match,Php,Regex,Preg Match,我试图预匹配一个字符串。基本上,如果我得到一个字符串,它被赋予一个变量 $line = " <szFilename> &#6; ds </szFilename> " $line=“;ds” 我需要检查刺是否以开头。 我发现很难找到模式。 我试过的是 $line=" <szFilename> &#6; ds </szFilename> "; //$line2=" <szFilenamed1> &#

我试图预匹配一个字符串。基本上,如果我得到一个字符串,它被赋予一个变量

$line = " <szFilename> &#6; ds  </szFilename>  "
$line=“;ds”
我需要检查刺是否以
开头。
我发现很难找到模式。 我试过的是

$line=" <szFilename> &#6; ds  </szFilename>  ";
//$line2=" <szFilenamed1> &#6; ds  </szFilenamed1>  ";
//echo trim($line);
if(preg_match("/[<szFilename>]*/",trim($line))){
    echo "GOT IT";
 }
$line=“;ds”;
//$line2=“;ds”;
//回波微调($线);
如果(预匹配(“/[]*/”,修剪($line))){
echo“明白了”;
}

有什么帮助吗?

这里不需要正则表达式。只需使用确定字符串是否在开头(索引0),例如

if(strpos(trim($line), "<szFilename>") === 0) {
    echo "success";
}

此外,如果您正在编写自己的正则表达式,我可以强烈推荐此网站:,它可以很好地突出显示所有内容,并且您可以从右边得到一个很好的解释,您的正则表达式是做什么的。

这里不需要正则表达式。只需使用确定字符串是否在开头(索引0),例如

if(strpos(trim($line), "<szFilename>") === 0) {
    echo "success";
}

另外,如果您正在编写自己的正则表达式,我可以强烈推荐这个网站:,它可以很好地突出显示所有内容,并为您的正则表达式做一个很好的解释。

Just
'/^\s*+/'
就是您所需要的。

Just
'/^\s*+/'
就是您所需要的。

使用
strop(…)===0
为避免strpos()返回错误,请使用
strpos(…)===0
为避免strpos()返回错误,我们的问题在哪里?我们的问题在哪里?