php正则表达式来检查字符串是否以包含lang代码的特定字符串开头
我有两条像这样的线php正则表达式来检查字符串是否以包含lang代码的特定字符串开头,php,regex,Php,Regex,我有两条像这样的线 /en/user/abc和 /user/abc 我想检查上述字符串是否以/user/开头。在上述两种情况下,条件应返回true。因此,正则表达式也应该考虑一个可能的LangEng. 我用了这个正则表达式 if (preg_match('#^/user/#i', $url) === 1) { echo 'yes'; } 它工作正常,但我不知道如何处理字符串中可能的lang代码 或者我是否可以从上述两个字符串中获取/user/abc?然后我可以使用上面的正则表达式。您可
/en/user/abc
和
/user/abc
我想检查上述字符串是否以/user/
开头。在上述两种情况下,条件应返回true。因此,正则表达式也应该考虑一个可能的LangEng.
我用了这个正则表达式
if (preg_match('#^/user/#i', $url) === 1) {
echo 'yes';
}
它工作正常,但我不知道如何处理字符串中可能的lang代码
或者我是否可以从上述两个字符串中获取
/user/abc
?然后我可以使用上面的正则表达式。您可以将所有语言代码添加到正则表达式:^(?:\/(?:en | de | nl))\/user
见:
或者允许任何两个字符:^(?:\/[a-z]{2})?\/user
请参阅:使用
^(?:/en)?/user/
但也应该有另一个lang代码,如i-enl
,de
等。当使用^(?:/[a-z]{2})?/user/
时,不必转义\/
,因为OP使用的分隔符是