【发布时间】:2013-05-28 11:34:24
【问题描述】:
我需要一些关于构建正则表达式的帮助。
我有一个域名数组和一个 TLD 数组(很长)。示例:
tlds = {
'.com':{
1 : '£4.00',
2 : '£7.50',
3 : '£11.00',
4 : '£14.50',
5 : '£18.00',
},
'.org':{
1 : '£5.00',
2 : '£10.00',
3 : '£15.00',
4 : '£20.00',
5 : '£25.00',
},
'.net':{
1 : '£6.00',
2 : '£12.00',
3 : '£18.00',
4 : '£24.00',
5 : '£30.00',
},
'.co.uk':{
1 : '£7.00',
2 : '£14.00',
3 : '£21.00',
4 : '£28.00',
5 : '£35.00',
},
'.com.br':{
1 : '£9.00',
2 : '£16.00',
3 : '£22.00',
4 : '£28.00',
5 : '£34.00',
}
}
domainResults = {
0 : {
'domain' : 'anything.com',
'status' : 'available'
},
1 : {
'domain' : 'anything-weird.org',
'status' : 'available'
},
2 : {
'domain' : 'anything-amazing.co.uk',
'status' : 'available'
}
}
对于每个域名,我想分配正确的 tld。 数组中的每个域名始终与其中一个 TLD 匹配。
我认为解决方案应该将每个 TLD 作为 REGEX 循环,直到它与我正在循环的域名匹配。
我知道这会很棘手,因为我始终拥有至少 26 个 TLD,并且我想确保它们都不匹配,以防止错误显示定价(例如:以 '.com.br 结尾的域名' 绝不应该是正则表达式 '.com' 的结果,而仅适用于 tld '.com.br' )。
【问题讨论】:
-
您为什么不简单地检查域是否以 TLD 结尾?
-
对我来说这看起来像 JSON 数据,您可以通过正确使用它更轻松地完成此操作。
-
@melwil 这里没有 JSON。
标签: javascript regex domain-name tld