PHP preg_match,检查语言是否在url中定义

时间:2014-11-24 10:09:27

标签: php regex preg-match

我想测试网址中的语言匹配。

网址将如下:http://www.domainname.com/en/#m=4&guid=%some_param%

我想检查网址中是否有现有的语言代码。我正在考虑这些方面之间的事情:

^(.*:)\/\/([a-z\-.]+)(:[0-9]+)?(.*)$

^(http|https:)\/\/([a-z\-.]+)(:[0-9]+)?(.*)$

我对正则表达式并不敏感。任何人都可以帮助或指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

[HTTPS] +:// [A-Z-] +([A-Z])+ / 试试这个, http://www.regexr.com/这是一个用于创建正则表达式的简单网站

答案 1 :(得分:1)

如果您知道您正在测试的数据是一个网址,那么我就不会费心将所有网址部分添加到正则表达式中。保持简单如下:/\/[a-z]{2}\//在两个正斜杠之间寻找两个字母的组合。如果您需要捕获语言代码,请将其包装在括号中:/\/([a-z]{2})\//