Я хотел бы сопоставить следующие строки с использованием python regex и извлечь числа.Python regex for diffstat output
1 file changed, 1 insertion(+), 1 deletion(-)
2 files changed, 10 insertions(+), 10 deletions(-)
1 file changed, 1 insertion(+)
1 file changed, 2 deletions(-)
Так что, хотя я использую названные группы в регулярном выражении python и просматриваю шаблоны. Но это работает не так, как ожидалось.
#!/usr/bin/python
import re
pat='\s*(\d+).*changed,\s+(\d*)(?P<in>=\s+insertion).*(\d+)(?P<del>=\s+deletion.*')
diff_stats = re.compile(pat)
obj = diff_stats.match(line)
Да, но оно соответствует только первые две строки. «вставка» и «удаление» или необязательная. Либо один придет, либо и то, и другое. Так вы можете предложить шаблон для этого? – Dinesh
@ Dinesh проверить обновление ... –
Спасибо. Это сработало. :) P.S + всегда сопровождаются вставками. и - всегда следует удаление. Поэтому [+ -] может не потребоваться в шаблоне. – Dinesh