Ответ 1
Это потому, что *
является жадным квантификатором, пытаясь сопоставить столько, сколько может. Сделайте это *?
:
q=http://.*?\.doc
Дополнительная информация содержится в регулярном выражении HOWTO: Жадный и неживый
пытается написать регулярное выражение, которое может найти все шаблоны
p = "q=http://.*\.doc" in
text = "q=http://11111.doc,q=http://22222.doc"
когда я закончил текст,
Получаю все, т.е. q=http://11111.doc,q=http://22222.doc
но не q=http://11111.doc
и q=http://22222.doc
как я могу это исправить?
Это потому, что *
является жадным квантификатором, пытаясь сопоставить столько, сколько может. Сделайте это *?
:
q=http://.*?\.doc
Дополнительная информация содержится в регулярном выражении HOWTO: Жадный и неживый