我有两个类似的字符串
/en/user/abc
和/user/abc
我想检查以上字符串是否以/user/
开头。在上述两种情况下,条件都应返回true。因此regex也应该考虑一个可能的langcode。
我使用了这个正则表达式。
if (preg_match('#^/user/#i', $url) === 1) {
echo 'yes';
}
它工作得很好,但我不知道如何处理字符串中可能的lang代码。
或者如果我能从上面两个字符串中得到/user/abc
?然后我可以使用上面的正则表达式。
您可以将所有语言代码添加到正则表达式中:^(?:/(?:en|de|nl))/user
请参阅:https://regex101.com/r/T7HxoD/4
或者允许任意两个字符:^(?:/[a-z]{2})?/user
请参阅:https://regex101.com/r/T7HxoD/3