对于多语言域,我有以下 url 字符串:
de.example.com
it.example.com
XX.example.com
并且只是:
example.com
语言代码应为 2 个字符 [az]
所以我使用 preg_match 来比较字符串是否匹配:
'!^(.*).example.com$!'
它与 anylanguage.example.com 匹配,但只有单个 domain.com 字符串有问题吗?如何将 preg_match 修改为两种条件?谢谢!
对于多语言域,我有以下 url 字符串:
de.example.com
it.example.com
XX.example.com
并且只是:
example.com
语言代码应为 2 个字符 [az]
所以我使用 preg_match 来比较字符串是否匹配:
'!^(.*).example.com$!'
它与 anylanguage.example.com 匹配,但只有单个 domain.com 字符串有问题吗?如何将 preg_match 修改为两种条件?谢谢!
如果语言总是 2 个字母:
'!^([a-z]{2})?\.?example\.com$!'
'!^(?:([a-z]{2})\.)?example\.com$!i'
变化:
.表示“任何字符”,而不是“点”?意思是“可选的”[a-z]意思是“从 a 到 z 的任何字符”{2}意思是“正好两个”i标志的意思是“不区分大小写”(?:....)是非捕获模式点字符以防 domain.com 与您的正则表达式不匹配。所以我将它修改为这种格式:
'!^(.*)[\.]?domain.com$!'