Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
Эксперт по компьютерным сетям
 Аватар для MonaxGT
278 / 278 / 25
Регистрация: 02.08.2012
Сообщений: 1,232

Как выделить поля текстового файла, формируя вывод по условию?

23.09.2013, 16:18. Показов 1235. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Делаю программу-скрипт для парсинга некоторого конфигур.файла и составления из опредленных строк другого файла.

Есть файла который необходимо запарсить:
Кликните здесь для просмотра всего текста

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
interface ethernet 0/1
description 01
switchport access vlan 231
exit
interface ethernet 0/2
description 02
switchport access vlan 221
exit
interface ethernet 0/3
description '03'
exit
interface ethernet 0/4
description 04
exit
interface ethernet 0/5
shutdown
exit
interface ethernet 0/6
description 06
switchport access vlan 1300
exit
interface ethernet 0/7
description 07
switchport access vlan 1300
exit
interface ethernet 0/8
description 08
exit
interface ethernet 0/9
description 09
switchport access vlan 504
exit
interface ethernet 0/10
description 10
switchport access vlan 1300
exit
interface ethernet 0/11
description 11
exit
interface ethernet 0/12
description 12
switchport access vlan 1300
exit
interface ethernet 0/13
description 13
exit
interface ethernet 0/14
description 14
switchport access vlan 1300
exit
interface ethernet 0/15
description 15
switchport access vlan 299
exit
interface ethernet 0/16
shutdown
exit
interface ethernet 0/17
description 17
switchport access vlan 1300
exit
interface ethernet 0/18
description 18
exit
interface ethernet 0/19
description 19
switchport access vlan 1300
exit
interface ethernet 0/20
description 20
exit
interface ethernet 0/21
description 21
exit
interface ethernet 0/22
description 22
exit
interface ethernet 0/23
description 23
switchport access vlan 1300
exit
interface ethernet 0/24
description 24
exit
interface ethernet 0/1
igmp-snooping fast-leave
exit
interface ethernet 0/2
igmp-snooping fast-leave
exit
interface ethernet 0/3
igmp-snooping fast-leave
exit
interface ethernet 0/4
igmp-snooping fast-leave
exit
interface ethernet 0/5
igmp-snooping fast-leave
exit
interface ethernet 0/6
igmp-snooping fast-leave
exit
interface ethernet 0/7
igmp-snooping fast-leave
exit
interface ethernet 0/8
igmp-snooping fast-leave
exit
interface ethernet 0/9
igmp-snooping fast-leave
exit
interface ethernet 0/10
igmp-snooping fast-leave
exit
interface ethernet 0/11
igmp-snooping fast-leave
exit
interface ethernet 0/12
igmp-snooping fast-leave
exit
interface ethernet 0/13
igmp-snooping fast-leave
exit
interface ethernet 0/14
igmp-snooping fast-leave
exit
interface ethernet 0/15
igmp-snooping fast-leave
exit
interface ethernet 0/16
igmp-snooping fast-leave
exit
interface ethernet 0/17
igmp-snooping fast-leave
exit
interface ethernet 0/18
igmp-snooping fast-leave
exit
interface ethernet 0/19
igmp-snooping fast-leave
exit
interface ethernet 0/20
igmp-snooping fast-leave
exit
interface ethernet 0/21
igmp-snooping fast-leave
exit
interface ethernet 0/22
igmp-snooping fast-leave
exit
interface ethernet 0/23
igmp-snooping fast-leave
exit
interface ethernet 0/24
igmp-snooping fast-leave
exit
![LLDP]
lldp
interface ethernet 0/1
no lldp
exit
interface ethernet 0/2
no lldp
exit
interface ethernet 0/3
no lldp
exit
interface ethernet 0/4
no lldp
exit
interface ethernet 0/5
no lldp
exit
interface ethernet 0/6
no lldp
exit
interface ethernet 0/7
no lldp
exit
interface ethernet 0/8
no lldp
exit
interface ethernet 0/9
no lldp
exit
interface ethernet 0/10
no lldp
exit
interface ethernet 0/11
no lldp
exit
interface ethernet 0/12
no lldp
exit
interface ethernet 0/13
no lldp
exit
interface ethernet 0/14
no lldp
exit
interface ethernet 0/15
no lldp
exit
interface ethernet 0/16
no lldp
exit
interface ethernet 0/17
no lldp
exit
interface ethernet 0/18
no lldp
exit
interface ethernet 0/19
no lldp
exit
interface ethernet 0/20
no lldp
exit
interface ethernet 0/21
no lldp
exit
interface ethernet 0/22
no lldp
exit
interface ethernet 0/23
no lldp
exit
interface ethernet 0/24
no lldp
exit


Написал программу, составил регулярное выражение, но оно не фильтрует так как надо.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/env python3
 
import re
#with open ('test.txt','w') as testtext:
i=0
regex = re.compile('^interface\sethernet\s0/\d.*\rdescription\s.*\r', re.MULTILINE | re.IGNORECASE )
with open ('cfg.cfg') as text: 
    for line in text:
#        line = [i.strip() for i in line]
#        line = line.readline()
        line = line.rstrip('\n')
        match = regex.search(line)
        if match :
            print line
        temp = line
    text.close
print temp
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
interface ethernet 0/1
description 01
switchport access vlan 231
exit
interface ethernet 0/2
description 02
switchport access vlan 221
exit
interface ethernet 0/3
description '03'
exit
interface ethernet 0/4
description 04
exit
и т.д.

В принципе вывод не столь важен, как важно регулярное выражение. Подскажите в чем может быть причина и как лучше выполнить данную фильтрацию. Заранее спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.09.2013, 16:18
Ответы с готовыми решениями:

Считать данные из текстового файла по условию и записать их в другой текстовый файл (файловый ввод/вывод)
Здравствуйте! Очень прошу о помощи! Суть задания - дан текстовый файл, нужно считать его и записать в другой файл слова состоящие только из...

Как в C выделить динамическую память для текстового файла?
Добрый вечер! Прошу вашей помощи. У меня есть функция: FILE* openInputFile() { printf("Enter the name of the input...

Поиск в справочнике по условию из текстового поля
Приветствую. Ситуация такая. Почему то в ЗКР (сокращенная) основание платежа, куда заводится наименование первичного документа, состоит...

7
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
23.09.2013, 20:48
Цитата Сообщение от MonaxGT Посмотреть сообщение
и составления из опредленных строк другого файла
что нужно получить ? приведи пример

Добавлено через 2 минуты
Цитата Сообщение от MonaxGT Посмотреть сообщение
В принципе вывод не столь важен
наоборот, важно что есть вначале (предусловие) и что нужно получить (постусловие)
а как переход из одного в другое происходит - неважно, потому что способов множество
0
Эксперт по компьютерным сетям
 Аватар для MonaxGT
278 / 278 / 25
Регистрация: 02.08.2012
Сообщений: 1,232
24.09.2013, 08:41  [ТС]
accept,

Есть текстовый файл:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
interface ethernet 0/1
description 01
switchport access vlan 231
exit
interface ethernet 0/2
description 02
switchport access vlan 221
exit
interface ethernet 0/3
description '03'
exit
interface ethernet 0/1
igmp-snooping fast-leave
exit
Необходимо, чтобы программа открывала этот файл и делала выборку (Выборка для куска указанного выше) затем выполняла запись всей выборки в файл.

Code
1
2
3
interface ethernet 0/1, description 01, access, 231,
interface ethernet 0/2, description 02, access, 221,
interface ethernet 0/3, description '03', trunk,,
То есть программа определяет и заносит название интерфейса, его description ( он представлен цифрами/буквами/знаками), тип ( если switchport access vlan 221 - значит порт access, значение 221), если строчка отсутствует то пишем слово trunk и один символ пустой через запятую.
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
24.09.2013, 15:31
Кликните здесь для просмотра всего текста
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
[guest@localhost txtflds]$ ./txtflds.py 
[guest@localhost txtflds]$ cat file.txt 
interface ethernet 0/1
description 01
switchport access vlan 231
exit
interface ethernet 0/2
description 02
switchport access vlan 221
exit
interface ethernet 0/3
description '03'
exit
interface ethernet 0/4
description 04
exit
interface ethernet 0/5
shutdown
exit
interface ethernet 0/6
description 06
switchport access vlan 1300
exit
interface ethernet 0/7
description 07
switchport access vlan 1300
exit
interface ethernet 0/8
description 08
exit
interface ethernet 0/9
description 09
switchport access vlan 504
exit
interface ethernet 0/10
description 10
switchport access vlan 1300
exit
interface ethernet 0/11
description 11
exit
interface ethernet 0/12
description 12
switchport access vlan 1300
exit
interface ethernet 0/13
description 13
exit
interface ethernet 0/14
description 14
switchport access vlan 1300
exit
interface ethernet 0/15
description 15
switchport access vlan 299
exit
interface ethernet 0/16
shutdown
exit
interface ethernet 0/17
description 17
switchport access vlan 1300
exit
interface ethernet 0/18
description 18
exit
interface ethernet 0/19
description 19
switchport access vlan 1300
exit
interface ethernet 0/20
description 20
exit
interface ethernet 0/21
description 21
exit
interface ethernet 0/22
description 22
exit
interface ethernet 0/23
description 23
switchport access vlan 1300
exit
interface ethernet 0/24
description 24
exit
interface ethernet 0/1
igmp-snooping fast-leave
exit
interface ethernet 0/2
igmp-snooping fast-leave
exit
interface ethernet 0/3
igmp-snooping fast-leave
exit
interface ethernet 0/4
igmp-snooping fast-leave
exit
interface ethernet 0/5
igmp-snooping fast-leave
exit
interface ethernet 0/6
igmp-snooping fast-leave
exit
interface ethernet 0/7
igmp-snooping fast-leave
exit
interface ethernet 0/8
igmp-snooping fast-leave
exit
interface ethernet 0/9
igmp-snooping fast-leave
exit
interface ethernet 0/10
igmp-snooping fast-leave
exit
interface ethernet 0/11
igmp-snooping fast-leave
exit
interface ethernet 0/12
igmp-snooping fast-leave
exit
interface ethernet 0/13
igmp-snooping fast-leave
exit
interface ethernet 0/14
igmp-snooping fast-leave
exit
interface ethernet 0/15
igmp-snooping fast-leave
exit
interface ethernet 0/16
igmp-snooping fast-leave
exit
interface ethernet 0/17
igmp-snooping fast-leave
exit
interface ethernet 0/18
igmp-snooping fast-leave
exit
interface ethernet 0/19
igmp-snooping fast-leave
exit
interface ethernet 0/20
igmp-snooping fast-leave
exit
interface ethernet 0/21
igmp-snooping fast-leave
exit
interface ethernet 0/22
igmp-snooping fast-leave
exit
interface ethernet 0/23
igmp-snooping fast-leave
exit
interface ethernet 0/24
igmp-snooping fast-leave
exit
![LLDP]
lldp
interface ethernet 0/1
no lldp
exit
interface ethernet 0/2
no lldp
exit
interface ethernet 0/3
no lldp
exit
interface ethernet 0/4
no lldp
exit
interface ethernet 0/5
no lldp
exit
interface ethernet 0/6
no lldp
exit
interface ethernet 0/7
no lldp
exit
interface ethernet 0/8
no lldp
exit
interface ethernet 0/9
no lldp
exit
interface ethernet 0/10
no lldp
exit
interface ethernet 0/11
no lldp
exit
interface ethernet 0/12
no lldp
exit
interface ethernet 0/13
no lldp
exit
interface ethernet 0/14
no lldp
exit
interface ethernet 0/15
no lldp
exit
interface ethernet 0/16
no lldp
exit
interface ethernet 0/17
no lldp
exit
interface ethernet 0/18
no lldp
exit
interface ethernet 0/19
no lldp
exit
interface ethernet 0/20
no lldp
exit
interface ethernet 0/21
no lldp
exit
interface ethernet 0/22
no lldp
exit
interface ethernet 0/23
no lldp
exit
interface ethernet 0/24
no lldp
exit
[guest@localhost txtflds]$ cat output.txt 
interface ethernet 0/1, description 01, access, 231,
interface ethernet 0/2, description 02, access, 221,
interface ethernet 0/3, description '03', trunk,,
interface ethernet 0/4, description 04, trunk,,
interface ethernet 0/6, description 06, access, 1300,
interface ethernet 0/7, description 07, access, 1300,
interface ethernet 0/8, description 08, trunk,,
interface ethernet 0/9, description 09, access, 504,
interface ethernet 0/10, description 10, access, 1300,
interface ethernet 0/11, description 11, trunk,,
interface ethernet 0/12, description 12, access, 1300,
interface ethernet 0/13, description 13, trunk,,
interface ethernet 0/14, description 14, access, 1300,
interface ethernet 0/15, description 15, access, 299,
interface ethernet 0/17, description 17, access, 1300,
interface ethernet 0/18, description 18, trunk,,
interface ethernet 0/19, description 19, access, 1300,
interface ethernet 0/20, description 20, trunk,,
interface ethernet 0/21, description 21, trunk,,
interface ethernet 0/22, description 22, trunk,,
interface ethernet 0/23, description 23, access, 1300,
interface ethernet 0/24, description 24, trunk,,
[guest@localhost txtflds]$
Вложения
Тип файла: zip txtflds.zip (1.9 Кб, 9 просмотров)
1
Эксперт по компьютерным сетям
 Аватар для MonaxGT
278 / 278 / 25
Регистрация: 02.08.2012
Сообщений: 1,232
24.09.2013, 23:41  [ТС]
Спасибо большое accept, а теперь как всегда рубрика "Правильно ли я понял?" =)

Python
1
(?:switchport\ access\ vlan\ (\S+)\n)?
Как я прочитал (?: группа без захвата. То есть как я понял, необязательное условие ( есть так есть, нет так нет). Прощу прояснить, из прочитанного справочного материала я не совсем понял, как данное выражение отрабатывает.

Python
1
2
        for i in re.findall(pat, fin.read(), re.X):
            print(fmt(i), file=fout)
Тут мне непонятно re.X , откуда это и зачем?
i которое мы отдаем функции, откуда мы берем? (я понял зачем, но как именно мы его получаем)

П.С. Программу пока не запускал. Проверю завтра.
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
25.09.2013, 00:13
Цитата Сообщение от MonaxGT Посмотреть сообщение
Как я прочитал (?: группа без захвата.
re.findall возвращает список совпавших строк, если нет групп в выражении, либо список совпавших групп, если есть группы в выражении

незахватывающая группа не будет считаться группой, поэтому не будет возвращена в списке совпавших групп
в то же время внутри неё есть простая группа, которая будет возвращена в списке совпавших групп

Цитата Сообщение от MonaxGT Посмотреть сообщение
Тут мне непонятно re.X , откуда это и зачем?
re.X - это re.VERBOSE (многословное регулярное выражение)
python.org. re.VERBOSE

Цитата Сообщение от MonaxGT Посмотреть сообщение
i которое мы отдаем функции, откуда мы берем?
это переменная, создаваемая циклом for
1
Эксперт по компьютерным сетям
 Аватар для MonaxGT
278 / 278 / 25
Регистрация: 02.08.2012
Сообщений: 1,232
25.09.2013, 10:12  [ТС]
Спасибо большое!

Добавлено через 1 час 11 минут
accept, попытался "скормить" скрипту рабочий файл (не тестовый) - пустота в ответ. Начал разбираться в регулярном выражении с помощью мануалов и ресурса http://regex101.com/#

Добавил Ваше рег.выражение и пример из тестового файла для парсинга, он пишет что нет совпадений, скорей всего я им просто не умею пользоваться и не могу найти где ввести re.X.

Проанализировал строчки, дополнил рег.выражение:

Python
1
2
3
4
5
6
r'''interface\ ethernet\ (\S+)\n
    description\ (\S+)\n
    (?:switchport\ access\ vlan\ (\S+)\n)?
    (?:shutdown\n)?
    exit
'''
Пример рабочего:
Кликните здесь для просмотра всего текста
interface ethernet 0/1
description Job_Ui
switchport access vlan 231
exit
interface ethernet 0/2
description FREE21
shutdown
exit
interface ethernet 0/3
description "1540458|125|GALPERIN P M"
switchport access vlan 1304
exit
interface ethernet 0/4
description "1232141241|124|Jon on 9"
exit
interface ethernet 0/5
description "1021069|66|Masha 0 1"
switchport access vlan 1304
exit
interface ethernet 0/6
description "|127|BMWWWW"
switchport access vlan 1304
exit
interface ethernet 0/7
shutdown
exit


Прощу пояснить, где я туплю..
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
26.09.2013, 00:23
поправил с учётом новых данных
Кликните здесь для просмотра всего текста
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
[guest@localhost txtflds]$ cat file.txt 
interface ethernet 0/1
description 01
switchport access vlan 231
exit
interface ethernet 0/2
description 02
switchport access vlan 221
exit
interface ethernet 0/3
description '03'
exit
interface ethernet 0/4
description 04
exit
interface ethernet 0/5
shutdown
exit
interface ethernet 0/6
description 06
switchport access vlan 1300
exit
interface ethernet 0/7
description 07
switchport access vlan 1300
exit
interface ethernet 0/8
description 08
exit
interface ethernet 0/9
description 09
switchport access vlan 504
exit
interface ethernet 0/10
description 10
switchport access vlan 1300
exit
interface ethernet 0/11
description 11
exit
interface ethernet 0/12
description 12
switchport access vlan 1300
exit
interface ethernet 0/13
description 13
exit
interface ethernet 0/14
description 14
switchport access vlan 1300
exit
interface ethernet 0/15
description 15
switchport access vlan 299
exit
interface ethernet 0/16
shutdown
exit
interface ethernet 0/17
description 17
switchport access vlan 1300
exit
interface ethernet 0/18
description 18
exit
interface ethernet 0/19
description 19
switchport access vlan 1300
exit
interface ethernet 0/20
description 20
exit
interface ethernet 0/21
description 21
exit
interface ethernet 0/22
description 22
exit
interface ethernet 0/23
description 23
switchport access vlan 1300
exit
interface ethernet 0/24
description 24
exit
interface ethernet 0/1
igmp-snooping fast-leave
exit
interface ethernet 0/2
igmp-snooping fast-leave
exit
interface ethernet 0/3
igmp-snooping fast-leave
exit
interface ethernet 0/4
igmp-snooping fast-leave
exit
interface ethernet 0/5
igmp-snooping fast-leave
exit
interface ethernet 0/6
igmp-snooping fast-leave
exit
interface ethernet 0/7
igmp-snooping fast-leave
exit
interface ethernet 0/8
igmp-snooping fast-leave
exit
interface ethernet 0/9
igmp-snooping fast-leave
exit
interface ethernet 0/10
igmp-snooping fast-leave
exit
interface ethernet 0/11
igmp-snooping fast-leave
exit
interface ethernet 0/12
igmp-snooping fast-leave
exit
interface ethernet 0/13
igmp-snooping fast-leave
exit
interface ethernet 0/14
igmp-snooping fast-leave
exit
interface ethernet 0/15
igmp-snooping fast-leave
exit
interface ethernet 0/16
igmp-snooping fast-leave
exit
interface ethernet 0/17
igmp-snooping fast-leave
exit
interface ethernet 0/18
igmp-snooping fast-leave
exit
interface ethernet 0/19
igmp-snooping fast-leave
exit
interface ethernet 0/20
igmp-snooping fast-leave
exit
interface ethernet 0/21
igmp-snooping fast-leave
exit
interface ethernet 0/22
igmp-snooping fast-leave
exit
interface ethernet 0/23
igmp-snooping fast-leave
exit
interface ethernet 0/24
igmp-snooping fast-leave
exit
![LLDP]
lldp
interface ethernet 0/1
no lldp
exit
interface ethernet 0/2
no lldp
exit
interface ethernet 0/3
no lldp
exit
interface ethernet 0/4
no lldp
exit
interface ethernet 0/5
no lldp
exit
interface ethernet 0/6
no lldp
exit
interface ethernet 0/7
no lldp
exit
interface ethernet 0/8
no lldp
exit
interface ethernet 0/9
no lldp
exit
interface ethernet 0/10
no lldp
exit
interface ethernet 0/11
no lldp
exit
interface ethernet 0/12
no lldp
exit
interface ethernet 0/13
no lldp
exit
interface ethernet 0/14
no lldp
exit
interface ethernet 0/15
no lldp
exit
interface ethernet 0/16
no lldp
exit
interface ethernet 0/17
no lldp
exit
interface ethernet 0/18
no lldp
exit
interface ethernet 0/19
no lldp
exit
interface ethernet 0/20
no lldp
exit
interface ethernet 0/21
no lldp
exit
interface ethernet 0/22
no lldp
exit
interface ethernet 0/23
no lldp
exit
interface ethernet 0/24
no lldp
exit
 
interface ethernet 0/1
description Job_Ui
switchport access vlan 231
exit
interface ethernet 0/2
description FREE21
shutdown
exit
interface ethernet 0/3
description "1540458|125|GALPERIN P M"
switchport access vlan 1304
exit
interface ethernet 0/4
description "1232141241|124|Jon on 9"
exit
interface ethernet 0/5
description "1021069|66|Masha 0 1"
switchport access vlan 1304
exit
interface ethernet 0/6
description "|127|BMWWWW"
switchport access vlan 1304
exit
interface ethernet 0/7
shutdown
exit
[guest@localhost txtflds]$ ./txtflds.py 
[guest@localhost txtflds]$ cat output.txt 
interface ethernet 0/1, description 01, access, 231,
interface ethernet 0/2, description 02, access, 221,
interface ethernet 0/3, description '03', trunk,,
interface ethernet 0/4, description 04, trunk,,
interface ethernet 0/6, description 06, access, 1300,
interface ethernet 0/7, description 07, access, 1300,
interface ethernet 0/8, description 08, trunk,,
interface ethernet 0/9, description 09, access, 504,
interface ethernet 0/10, description 10, access, 1300,
interface ethernet 0/11, description 11, trunk,,
interface ethernet 0/12, description 12, access, 1300,
interface ethernet 0/13, description 13, trunk,,
interface ethernet 0/14, description 14, access, 1300,
interface ethernet 0/15, description 15, access, 299,
interface ethernet 0/17, description 17, access, 1300,
interface ethernet 0/18, description 18, trunk,,
interface ethernet 0/19, description 19, access, 1300,
interface ethernet 0/20, description 20, trunk,,
interface ethernet 0/21, description 21, trunk,,
interface ethernet 0/22, description 22, trunk,,
interface ethernet 0/23, description 23, access, 1300,
interface ethernet 0/24, description 24, trunk,,
interface ethernet 0/1, description Job_Ui, access, 231,
interface ethernet 0/2, description FREE21, trunk,,
interface ethernet 0/3, description "1540458|125|GALPERIN P M", access, 1304,
interface ethernet 0/4, description "1232141241|124|Jon on 9", trunk,,
interface ethernet 0/5, description "1021069|66|Masha 0 1", access, 1304,
interface ethernet 0/6, description "|127|BMWWWW", access, 1304,
[guest@localhost txtflds]$


Цитата Сообщение от MonaxGT Посмотреть сообщение
accept, попытался "скормить" скрипту рабочий файл (не тестовый) - пустота в ответ.

Добавил Ваше рег.выражение и пример из тестового файла для парсинга, он пишет что нет совпадений, скорей всего я им просто не умею пользоваться и не могу найти где ввести re.X.


Цитата Сообщение от MonaxGT Посмотреть сообщение
Проанализировал строчки, дополнил рег.выражение:
оно будет совпадать и с неправильными (когда есть оба варианта)

Цитата Сообщение от MonaxGT Посмотреть сообщение
Пример рабочего:
Цитата Сообщение от MonaxGT Посмотреть сообщение
Прощу пояснить, где я туплю..
пишешь сначала одно, потом другое
догадки не строятся изначально, потому что это приводит к лишнему написанию кода

инфа про оформление

рабочий код тоже сразу нужно закидывать по той же причине
видишь, первый шаблон пришлось выкинуть
это хорошо, что его просто можно поменять, но обычно это просто целиком переделывается
Вложения
Тип файла: zip txtflds_fixed.zip (2.1 Кб, 5 просмотров)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.09.2013, 00:23
Помогаю со студенческими работами здесь

Вывод данных с текстового поля на другой странице как надпись
Здравствуйте! У меня есть две страницы html. Первая страница принимает от пользователя некоторые данные: его имя, фамилию (в...

Как данные из текстового файла добавить в поля ввода??
Помогите найти решение...это оченьважно и срочно.. Проблема заключаеться в следующем: При открытии файла *.txt данные сначало должны...

Выделить из текстового файла n-ую строку
Выделить из текстового файла n-ую строку.

В данном задании необходимо осуществить обработку текстового файла (или файлов) согласно условию варианта. Имя файла пер
Файл содержит слова. Определить количество слов, начинающихся с буквы 'A'.

Как сделать ввод и вывод с текстового файла
напишите пожалуйста пример того как можно сделать ввод и вывод с текстового файла. Пример можно любой желательно что бы был на одномерном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru