我正在尝试用变量中的字符串替换以下URL的一部分:
https://somedomain.eu/api/one/some/2018/05/data
如何排除某些组并仅使用一个组。
这就是我所做的:
def change(var_data):
var = str(var_data) // for example: 11
url = 'https://somedomain.eu/api/one/some/2018/05/data'
url2 = re.sub(r'(\d\d)', var, url)
print(url2)
打印内容如下:https://somedomain.eu/api/one/some/1111/11/data
这是错误的,因为我只需要更改05 to 11
,而无需更改2018 to 1111
其他版本:
data_url_2 = re.sub(r'.+/(\d\d)/.+', month, data_url)
print(data_url_2)
print ='11'
我当时正在考虑寻找一种方法来划分3个小组,并排除第一个和第三个小组:
data_url_2 = re.sub(r'(.+/\d\d\d\d)(\d\d)(/.+)', month, data_url)
答案 0 :(得分:0)
可能不需要正则表达式,但是无论如何我们都要这么做。
condition(item, conditions) {
if(!item) return false;
if(!Array.isArray(conditions) || (conditions.length === 0)) return true;
for(let i = 0; i < conditions.length; i++) {
if(item[conditions[i].key] !== conditions[i].value) {
return false;
}
}
return true;
}
。
。
我当时正在考虑寻找一种方法来划分3个小组,并排除第一个和第三个小组:
什么?
答案 1 :(得分:0)
没有正则表达式的一种方式
def change(var_data):
var = str(var_data)
url = 'https://somedomain.eu/api/one/some/2018/05/data'
url1 = url.split('/')
url2 = '/'.join(url1[:-2] + [var] + [url1[-1]])
print(url2)
change('11')
#https://somedomain.eu/api/one/some/2018/11/data