Đối với trường, tôi phải viết kịch bản lệnh Python RE để trích xuất địa chỉ IP. Cụm từ thông dụng tôi đang sử dụng dường như hoạt động với re.search()
nhưng không hoạt động với re.findall()
.Cụm từ thông dụng của Python - re.search() vs re.findall()
exp = "(\d{1,3}\.){3}\d{1,3}"
ip = "blah blah 192.168.0.185 blah blah"
match = re.search(exp, ip)
print match.group()
Trận đấu cho điều đó luôn luôn là 192.168.0.185, nhưng nó khác nhau khi tôi làm re.findall()
exp = "(\d{1,3}\.){3}\d{1,3}"
ip = "blah blah 192.168.0.185 blah blah"
matches = re.findall(exp, ip)
print matches[0]
0.
Tôi đang tự hỏi tại sao re.findall()
sản lượng 0. khi re.search()
mang 192.168.0.185, kể từ khi tôi m sử dụng cùng một biểu thức cho cả hai hàm.
Và tôi có thể làm gì để làm cho nó như vậy re.findall()
thực sự sẽ theo đúng biểu thức? Hay tôi đang phạm sai lầm nào đó?
Điều đó hoạt động tốt, cảm ơn bạn. – user1168906