SORU
11 Kasım 2008, Salı


Kaçan Piton dize düzenli ifade

Bir metin üzerinde bir arama için düzenli ifade deseni olarak bir kullanıcı girişi kullanmak istiyorum. Çalışır, ama davalarını nasıl kullanıcı düzenli olarak anlamı olan karakterleri koyar nerede? Örneğin, kullanıcı Kelime için (s) arama yapmak istiyor: düzenli ifade motoru bir grup olarak (s) alacak. Bir dize "(s)" gibi davranmak istiyorum. Koş replace kullanıcı giriş ve değiştir ( \( ) \) ama sorun şu ki ben yapayım değiştirmek için mümkün olan her normal ifade sembolü. Biraz daha iyi bir yol biliyor musunuz ?

CEVAP
11 Kasım 2008, Salı


Bunun için: re.escape() işlevini kullanın

4.2.3 re Module Contents

kaçış(dizi)

Tüm geri dize olmayan alfanümerik backslashed; eğer düzenli ifade boşluk olabilir rasgele harflerden oluşan bir dize eşleştirmek istiyorsanız yararlıdır.

Basit bir örnek, sağlanan dize isteğe bağlı olarak '' ve MAÇ nesne döndürür. nın ardından herhangi bir tekrarı arama

def simplistic_plural(word, text):
    word_or_plural = re.escape(word)   's?'
    return re.match(word_or_plural, text)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Lena Danya

    Lena Danya

    11 NİSAN 2010
  • Project Mooncircle

    Project Moon

    6 Aralık 2009