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

  • Facebook Developers

    Facebook Dev

    24 ŞUBAT 2009
  • Howard Pinsky

    Howard Pinsk

    6 AĞUSTOS 2006
  • Just So

    Just So

    3 HAZİRAN 2007