python - كيف تتطابق مع سلسلة فرعية في سلسلة تتجاهل الحالة؟




perl (4)

أنا أبحث عن تجاهل مقارنة سلسلة حالة في بيثون. لقد حاولت مع:

if line.find('mandy') >= 0:

ولكن أي نجاح لحالة تجاهل. أحتاج إلى العثور على مجموعة من الكلمات في ملف نصي معين. أنا أقرأ ملف الخط عن طريق الخط. كلمة على سطر يمكن أن يكون → ماندي ، ماندي ، ماندي إلخ [لا أريد استخدام toupper / tolower إلخ]

أنا أبحث عن ما يعادل بيثون رمز بيرل أدناه

if($line=~/^Mandy Pande:/i)

إذا كنت لا تريد استخدام str.lower() ، فيمكنك استخدام regexp:

import re

if re.search('mandy', 'Mandy Pande', re.IGNORECASE):
    # is True

انظر this

In [14]: re.match("mandy", "MaNdY", re.IGNORECASE)
Out[14]: <_sre.SRE_Match object at 0x23a08b8>

هناك وظيفة أخرى here ، حاول النظر إلى هذا

راجع للشغل أنك تبحث عن طريقة .lower ()

string1 = "hi"
string2 = "HI"
if string1.lower() == string2.lower():
    print "Equals!"
else:
    print "Different!"

a = "MandY"
alow = a.lower()
if "mandy" in alow:
    print "true"

حول العمل





perl