让字符串以/ en /或/ nl /或/ ab /开头,换句话说:
/后跟两个字母,以/
结束字符串的结尾可能有些东西,但不介意。
示例:
/nl/ -> match
/marketing/ -> no match
/marketing.html -> no match
/12/ -> no match
我试过了:^ / [a-z] / $但我认为我没有走上正轨。
答案 0 :(得分:2)
您可以在PHP中使用此正则表达式:
#^/(en|nl|ab)/#
或者匹配开头的任何2个字母:
#^/[a-zA-Z]{2}/#
#
[a-zA-Z]
将匹配字母a-z或A-Z [a-zA-Z]{2}
将恰好匹配2个字母(a-z或A-Z)/[a-zA-Z]{2}/
将恰好匹配2个字母(a-z或A-Z),前后跟/
答案 1 :(得分:0)
表情问题:
[a-z]
仅匹配字符集[a-z]
$
匹配字符串的结尾,如果它是uri的第一部分,则秒/
可能不在字符串的末尾。/
作为分隔符,则必须使用/
对正则表达式中的任何\/
进行转义(请参阅下面的示例)。使用:
^\/([a-z]+)\/
或者如果你只想得到它,那就是两个字符:
^\/([a-z]{2})\/
示例:
$matchings = array();
$uri = '/en/user/131';
if (preg_match('/^\/([a-z]+)\//', $uri, $matchings))
{
echo "Language: " . $matchings[1];
}
打印:
Language: en