#python
#python
Вопрос:
как я могу скопировать повторяющийся абзац в текстовый файл, начинающийся и заканчивающийся определенными словами, используя модуль re, и вставить каждый абзац в индекс списка
пример абзаца
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140116/cleanup/stat_KSHA500 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140200/cleanup/stat_KSHA11 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_1500/cleanup/stat_KSHA211 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
Комментарии:
1. Честно говоря, я понятия не имею, что вы имеете в виду. Каков ваш ожидаемый или желаемый результат?
2. требуется вывод списка, в котором каждая строка индекса начинается с remoteconfig и заканчивается ssh2 с использованием re
3. Надеюсь, мое решение поможет
Ответ №1:
Языковые барьеры в сторону, на основе ваших критериев попробуйте это
>>> import re
>>> string = '''RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140116/cleanup/stat_KSHA500 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140200/cleanup/stat_KSHA11 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_1500/cleanup/stat_KSHA211 --conf /export/home-V cisco -N -S -o -P telnet,ssh2'''
>>> configs = re.findall('(?i)RemoteConfig[Ss]*?ssh2(?=s|$)', string)
>>> for config in configs:
print(config)
#Output
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140116/cleanup/stat_KSHA500 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140200/cleanup/stat_KSHA11 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_1500/cleanup/stat_KSHA211 --conf /export/home-V cisco -N -S -o -P telnet,ssh2
>>> configs
#Output
['RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140116/cleanup/stat_KSHA500 --conf /export/home-V cisco -N -S -o -P telnet,ssh2', 'RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_140200/cleanup/stat_KSHA11 --conf /export/home-V cisco -N -S -o -P telnet,ssh2', 'RemoteConfig cleanup.txt --prefix /tftpboot/sites --status /tftpboot/190315_1500/cleanup/stat_KSHA211 --conf /export/home-V cisco -N -S -o -P telnet,ssh2']