forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Болтовня (http://forum.boolean.name/forumdisplay.php?f=25)
-   -   Питон. Регулярка (http://forum.boolean.name/showthread.php?t=13274)

impersonalis 02.09.2010 10:40

Питон. Регулярка
 
Кто-нибудь знает Питон? Нужно решить задачу с регулярными выражениями. Суть такова:
Цитата:

Исходная строка
Код:

Баланс число руб. Сумма бонуса - число руб
где число - число с плавающей запятой; разделитель ","; точность - 2 цифры.
Необходимо привести к формату:
Пробелы и прочее plane-форматирование оригинально.
Код:

Баланс число / число

Пример:
Код:

(.+?[\d\,\.]+)
выводит
Код:

Баланс число

Randomize 02.09.2010 10:45

Ответ: Питон. Регулярка
 
Использование регулярных выражений обязательный пункт?

pax 02.09.2010 10:49

Ответ: Питон. Регулярка
 
Возможно поможет: http://docs.python.org/library/re.html есть примеры

Randomize 02.09.2010 10:59

Ответ: Питон. Регулярка
 
http://realcode.ru/regexptester/

PHP код:

([0-9]+[/.]+[0-9]+) 

Вернёт:
число1 число2

В регулярке сивол "/" ажбы откуда не приставишь.

pax 02.09.2010 11:26

Ответ: Питон. Регулярка
 
Чтобы найти два числа подойдет выражение как написал рандом
Код:

[0-9]+[,0-9]+
Остается из них составить строку

UPD
возможно что-то вроде:
Код:

import re
matches = re.findall(r"[0-9]+[,0-9]+", "Баланс 12,0 руб. Сумма бонуса - 13,56 руб")
textToDisplay = "Баланс "+ matches[0] +" / "+ matches[1]

upd2 питон подтвердил результат
Код:

>>> import re
>>> matches = re.findall(r"[0-9]+[,0-9]+", "Баланс 12,0 руб. Сумма бонуса - 13,56 руб")
>>> textToDisplay = "Баланс "+ matches[0] +" / "+ matches[1]
>>> textToDisplay
'Баланс 12,0 / 13,56'
>>>


impersonalis 02.09.2010 11:29

Ответ: Питон. Регулярка
 
Цитата:

Сообщение от Randomize (Сообщение 160716)
http://realcode.ru/regexptester/

PHP код:

([0-9]+[/.]+[0-9]+) 

Вернёт:
число1 число2

В регулярке сивол "/" ажбы откуда не приставишь.

Вернуло только первое число :(


Часовой пояс GMT +4, время: 16:15.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot