Преобразование кода RE из PHP в Python - PullRequest
0 голосов
/ 18 ноября 2009

Я сделал простую программу на PHP, теперь нужно преобразовать это в Python:

$string="Google 1600 Amphitheatre Parkway Mountain View, CA 94043 phone";
preg_match_all('/[0-9]+.{10,25}[^0-9]*[0-9]{5,6}+\s/',$string,$matches);
print_r($matches);

Ответы [ 3 ]

1 голос
/ 18 ноября 2009
import re
for x in re.findall('[0-9]+.{10,25}[^0-9]*[0-9]{5,6}\s',STRING):print x

будет в порядке?

0 голосов
/ 18 ноября 2009

В python вы должны использовать модуль re для этого. В отличие от PHP, вам не нужно размещать разделители, поэтому уберите символ "/", который у вас есть в начале и в конце шаблона.

Тогда идиома Python будет:

import re
string="Input values"
for match in re.findall('[0-9]+.{10,25}[^0-9]*[0-9]{5,6}\s',string) : 
    print match

Мы редко используем некоторые красивые инструменты печати, такие как "print_r" в Python, потому что большую часть времени итераторы и str () делают свое дело. Итак, простой цикл for сделает эту работу.

0 голосов
/ 18 ноября 2009
import re
string = "Input values"
match = re.match('/[0-9]+.{10,25}[^0-9]*[0-9]{5,6}\s/', s)
print match

это должно быть то, что вы ищете, если RegEx прав.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...