У меня есть файл со многими URL в форме:
http://www.edu-factory.org/wp/about/
Я хотел бы извлечь sitehost URL и добавить его в конец строки:
http://www.edu-factory.org/wp/about/ www.edu-factory.org
Какая-либо идея, как сделать это?
Один способ сделать это:
:s:\(.*//\)\([^/]*\)\(/.*\):\1\2\3 \2:
Объяснение:
:s:
- Используя замену\(.*//\)
- Получите часть до двойной наклонной черты (группа 1)\([^/]*\)
- Получите все, что это не наклонная черта (группа 2)\(/.*\)
- Получите первую единственную наклонную черту и все после него (группа 3):\1\2\3 \2:
- Выходные группы 1, 2 и 3 сопровождаются пространством и группой 2 сноваПравить:
Вы могли sorten что к:
:s:\(.*//\)\([^/]*\)\(/.*\):& \2:
Амперсанд производит целую совпавшую строку, которая включает целую строку, так как regex начинается и заканчивается .*
. Вы могли использовать \0
вместо амперсанда.