Daha uzun bir dizede bir desenle eşleşen alt dizelerle (yalnızca ikame olmaktan daha fazlası) bir şey yapmak istiyorum. Bir atama C ve diğer birçok programlama dillerinde olduğu gibi, bir değer döndüren bir ifade olsaydı, bu (Python semantik ile C sözdizimi kullanılarak) olacaktır: daha verboselyPython'da, düzenli ifadenin tüm eşleşmelerini bir dizede nasıl çözebilirim?
while (match = re.search(pat, str)) {
/* do something to the string, using the match object,
in addition to removing or replacing the substring
*/
}
veya bir gibi bir atama kullanımından kaçınarak ifadesi: bu en programlama dillerinde mümkün değildir
for (match = re.search(pat, str);
match;
match = re.search(pat, str)) {
/* do something to the string, using the match object */
}
en az bir: C, C++, Java, Perl, JavaScript, ... ama ikisi de Python mümkün görünmektedir. Pythonic bir eşdeğer var mı (kludgey karmaşasıyla bir mola veya devamsızlık ifadesi içermiyor)?
cevap bağlıdır. Ne üzerinde dönüyorsun? Bire bir eşleme kesinlikle yoktur, fakat kesinlikle pythonic eşdeğerleri vardır. İstediğiniz şeyle biraz daha hassas olabilirseniz ... çünkü bu soru çok geniş olduğu için. –