2015-10-16 3 views
2

Я хочу проанализировать файл, и когда совпадение шаблонов продолжает проверять регулярное выражение. Потому что я хочу работать на возвращаемое значение, я писал:, в то время как регулярное совпадение делает что-то

while (m=test.match(data)) != None: 
    pass 

В моей идее, я хочу, чтобы повлиять на mtest.match(data) и после испытания, если не None или нет. Но с этим синтаксисом у меня есть:

SyntaxError: invalid syntax

Как я могу написать это без SyntaxError?

+0

Я подозреваю, что вы используете неправильную функцию для выполнения этой задачи. Используйте 'search()' not 'match()' – Identity1

ответ

1

Вы не можете использовать назначение в пункте петли:

m = test.match(data) 
if not m: 
    pass 
1

You can't do assignments in a while loop in any language where it expects a condition.

Я подозреваю, что вы пытаетесь просканировать файл, чтобы соответствовать по шаблону, а затем использовать их позже. В этом случае match() не является правильной функцией. IMHO

variable = "123abc" 
t = re.match("[a-z]+",variable) //returns null as word not in the beginning 
t = re.search("[a-z]+",variable) // matches as it scans through 
Смежные вопросы