Увеличение числа в строке Python
Парсил ресурс, тот что в коде. Решил форсировать поиск линков, с помощью регулярок. Так как там только цифры меняются. Да вот незадача, в названии ресурса 3 присутствует. И тройка тоже увеличилась в range.)
Как добавить тройку в исключение?
А то python создает несуществующие ресурсы. Конечно, можно потом www.w3resource.com, с помощью replace, приписать правильный хост - но это не элегантно ). Хотелось бы регулярками ограничиться.
import re
for i in range(1, 88):
s = "https://www.w3resource.com/python-exercises/string/python-data-type-string-exercise-1.php"
print(re.sub('(\d+)(?!\d)', lambda x: str(int(x.group(0)) + i), s))
Такая шляпа, к примеру, получается:
https://www.w4resource.com/python-exercises/string/python-data-type-string-exercise-2.php https://www.w5resource.com/python-exercises/string/python-data-type-string-exercise-3.php https://www.w6resource.com/python-exercises/string/python-data-type-string-exercise-4.php
Ответы (1 шт):
Автор решения: Danis
→ Ссылка
тут можно обойтись без регулярок:
for i in range(1, 88):
s = f"https://www.w3resource.com/python-exercises/string/python-data-type-string-exercise-{i}.php"
print(s)
можно ссылку разделить на две части и менять только вторую:
for i in range(1, 88):
s = "python-exercises/string/python-data-type-string-exercise-1.php"
print("https://www.w3resource.com/" + re.sub('(\d+)(?!\d)', lambda x: str(int(x.group(0)) + i), s))