如何检查某个字符串是否在字符串的开头?

时间:2015-05-29 12:26:04

标签: php regex preg-match

我正在尝试preg_match一个字符串。基本上,如果我有一个给变量的字符串

05-29 17:53:51.714: W/System.err(8891): org.json.JSONException: No value for MediEazyInvoiceItemsList

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

"<szFilename>" .

任何帮助?

2 个答案:

答案 0 :(得分:4)

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

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

如果您需要/需要使用正则表达式,只需使用anchor^)在开始时匹配您的正则表达式,例如

if(preg_match("/^<szFilename>/", trim($line))) {
    echo "success";
}

另外,如果你正在编写自己的正则表达式,我强烈推荐这个网站:https://regex101.com/,它会很好地突出显示所有内容,你会得到一个很好的解释,正确的是你的正则表达式。

答案 1 :(得分:2)

只需'/^\s*<szFilename>.+/'即可。