нет фото |
| Автор: | Dirk Diggler |
| Дата: | 4-Jan-2006 20:37 (gmt = -3.0) | | |
регэкспы - почему так скобки влияют?
Есть программа:
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4 import re
5 inp_file=open('xian.txt')
6 cur_line=unicode(inp_file.read(),'utf-8')
7 rxAnekdot=re.compile("^\w{1,8}$.([^\s])+\s",re.U | re.M | re.S)
8 patResList = re.findall( rxAnekdot, cur_line )
9
10 # ВЫВОД В ФАЙЛ
11
12 if len(patResList) > 1:
13 out_file=open('xian3.txt','w')
14 for el in patResList:
15 out_file.write(el.encode('utf-8'))
16 out_file.close()
Вот если заменить регэксп из строки "^\w{1,8}$.([^\s])+\s" на "^\w{1,8}$.[^\s]+\s", то результат будет радикально разный!!! От первого остаются только кавычки, встречающиеся в тексте, второй - отрабатывает более менее по логике....
| |