Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 4, 2013 18:11:36

Adastraz
Зарегистрирован: 2012-10-01
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

RegEx

Друзья! Такая проблема
Есть файл в txt, нужно на экран вывести все формы глагола найти, используя регулярные выражения.
Я вспомнил:
найду
найдешь
найдут
найдем
найдете
найденный
найден
найдены
найденные

нашёл
нашли
нашедший

ищу
ищешь
ищете
ищем


А вот что я написал:

import re, codecs
words = []
f = codecs.open('new.txt', 'r', 'utf-8-sig')
m = re.search('^$', 'f')
if m != None:
   print m

Очевидно, что между ^ и $ должно стоять регулярное выражение. Какое?
Спасибо

Офлайн

#2 Фев. 4, 2013 20:50:22

dimy44
От: Евпатория
Зарегистрирован: 2012-04-21
Сообщения: 463
Репутация: +  42  -
Профиль  

RegEx

судя по приведенному вами коду, вам лень даже азы почитать, создали видимость участия и ждете готового решения. Ждите, может сжалится кто…

Офлайн

#3 Фев. 5, 2013 00:06:22

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10019
Репутация: +  857  -
Профиль   Отправить e-mail  

RegEx

а причём там “ищу, ищешь” ? надо “нахожу, находишь”

Adastraz
Я вспомнил:
не надо вспоминать, обратись к грамматике русского языка, выясни, что влияет на морфологическую форму

нашёл:
“форма 1-го лица единственного числа настоящего времени глагола”

по лицам: я, мы, ты, вы, он, она, оно, они
по числу: единственное, множественное
по времени: прошедшее, настоящее, будущее

число, походу, можно пропустить, так как лица его захватят

Adastraz
нужно на экран вывести все формы глагола найти, используя регулярные выражения.
сначала запиши все формы глагола, а потом уже составляй регулярное выражение



Отредактировано py.user.next (Фев. 5, 2013 00:11:49)

Офлайн

#4 Фев. 5, 2013 19:56:58

Adastraz
Зарегистрирован: 2012-10-01
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

RegEx

код написал, но появилась новая проблема
вместо вывода на экран найденного, выводит <_sre.SRE_Match object at 0x01AEEE20>
Как бороться?

Офлайн

#5 Фев. 5, 2013 20:27:09

Adastraz
Зарегистрирован: 2012-10-01
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

RegEx

Всё, осталось только регекс написать)

import re, codecs

words = []
k = []



f = codecs.open(u'new.txt', 'r', 'utf-8-sig')
for line in f:
for word in line.split():
word = word.lower()
word = word.strip(u'.,?!')
words.append(word)


for i in words:
m = re.search(u'^найти$', i)
if m != None:
k.append(i)

for i in k:
print i

Отредактировано Adastraz (Фев. 5, 2013 20:32:21)

Офлайн

#6 Фев. 6, 2013 08:42:02

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

RegEx

Есть файл в txt, нужно на экран вывести все формы глагола найти, используя регулярные выражения.
что в txt файле?
регепсы не занимаются выведением форм слов, они ищут наборы символов, для формирования слов нужно юзать спец. “базы” словоформ.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version