Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 21, 2008 21:43:04

crchemist
От:
Зарегистрирован: 2008-07-09
Сообщения: 379
Репутация: +  0  -
Профиль   Отправить e-mail  

txt to regexp

шукаю за якоюсь бібліотекою яка за набором стрічок могла б зробити загальний шаблон регулярного виразу. наприклад зі стрічок ‘123ffff45’ та ‘123a45’ видала щось типу '123+?45' . І може хтось підкине ідею як таку штуку самому можна написати.



Офлайн

#2 Сен. 22, 2008 15:33:12

poltergeist
От:
Зарегистрирован: 2007-02-28
Сообщения: 522
Репутация: +  0  -
Профиль   Отправить e-mail  

txt to regexp

:lol:



Офлайн

#3 Сен. 22, 2008 15:54:32

crchemist
От:
Зарегистрирован: 2008-07-09
Сообщения: 379
Репутация: +  0  -
Профиль   Отправить e-mail  

txt to regexp

ніби те що я хотів http://www.michael-noll.com/wiki/Python-Levenshtein + трішки дописати треба



Офлайн

#4 Сен. 22, 2008 16:55:10

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

txt to regexp

Я, до кінця не зрозумів що ти хотів. Щоб заміняло змінні частини в строках регекспом, залишаючи тільки константні? То проста задача. Зробити універсальний регексп для n-ї кількості стрічок? Задача складніша, неоднозначніша, і я тоді не розумію мети. Я завжди використовував регулярки для аналізу тексту, але не аналіз тексту - для побудови регулярок…

Офлайн

#5 Сен. 22, 2008 17:44:25

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

txt to regexp

Справді не зрозуміла мета задачі, можна пояснити, можливо її взагалі не потрібно вирішувати ? ;)

P.S.
І це, мені здається, тема не для флейму =)



Отредактировано (Сен. 22, 2008 17:45:49)

Офлайн

#6 Сен. 22, 2008 18:30:51

crchemist
От:
Зарегистрирован: 2008-07-09
Сообщения: 379
Репутация: +  0  -
Профиль   Отправить e-mail  

txt to regexp

Ferroman
Зробити універсальний регексп для n-ї кількості стрічок?
Ага. Такий собі автомат. Є така програмка для kde - Kompare. вона показує які символи в стрічці відрізняються. Левенштейн ніби теж так вміє (ще не пробував). (Є стандартна бібліотека difflib але в ній я не знайшов як дивитись які символи відрізняються) І в принципі все просто - якщо знаю в яких місцях відрізняються символи і знаю які саме символи то можна для них генерувати якийсь регексп. В прикладі з ‘123ffff45’ та ‘123a45’ левенштейн мав би видати ffff і a. Лишається написати якийсь словник і функцію яка буде розділяти на класи. тобто для ffff і a мінімальний клас в який вони двоє входять буде + . Якщоб була цифра в якійсь зі стрічок - мінімальний клас був би + і так далі.

regall
І це, мені здається, тема не для флейму
Я кинув в флейм так як в принципі тема до пітону нічого спільного немає. Мені і на С може бути. Взагалі сподівався що хтось кине лінк на готову бібліотеку на будь-якій мові.



Отредактировано (Сен. 22, 2008 18:40:56)

Офлайн

#7 Сен. 22, 2008 19:01:19

crchemist
От:
Зарегистрирован: 2008-07-09
Сообщения: 379
Репутация: +  0  -
Профиль   Отправить e-mail  

txt to regexp

Ferroman
. Я завжди використовував регулярки для аналізу тексту, але не аналіз тексту - для побудови регулярок…
Ну я теж) але я не бачу проблем щоб не можна було робити навпаки.



Офлайн

#8 Сен. 26, 2008 20:17:55

crchemist
От:
Зарегистрирован: 2008-07-09
Сообщения: 379
Репутация: +  0  -
Профиль   Отправить e-mail  

txt to regexp

знайшов цікавий сайт http://txt2re.com. Ось приклад для 123fff45 - http://txt2re.com/index-python.php3?s=123fff45&4



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version