मेरे पास ऐसी स्थिति है जहां कोई उपयोगकर्ता एक पता सबमिट करता है और मुझे मेरी कुंजी पर उपयोगकर्ता इनपुट को प्रतिस्थापित करना होगा। मैं बिना किसी प्रत्यय के पते का उपयोग कर इसमें शामिल हो सकता हूं।regex मैच और कई पैटर्न को प्रतिस्थापित करें
जिन वैगन TRAIL
CHISHOLM TRAIL
झील ट्रेल
CHESTNUT ST
लिंकन स्ट्रीट
रहे हैं:
जिन वैगन
CHISHOLM
झील
CHESTNUT
लिंकन
हालांकि मैं समझ नहीं सकता कैसे इस कोड को केवल अंतिम शब्द को बदलने के लिए लिखा जा सकता है। मैं:
लिंकन
CHESTNUT
CHISHOLM
LAKEAIL
CHISHOLMAIL
सम्मिलित WAGONL
मैं कोशिश की है regex वर्बोज़, re.sub और $।
import re
target = '''
LINCOLN STREET
CHESTNUT ST
CHISHOLM TR
LAKE TRAIL
CHISHOLM TRAIL
COVERED WAGON TRL
'''
rdict = {
' ST': '',
' STREET': '',
' TR': '',
' TRL': '',
}
robj = re.compile('|'.join(rdict.keys()))
re.sub(' TRL', '',target.rsplit(' ', 1)[0]), target
result = robj.sub(lambda m: rdict[m.group(0)], target)
print result
धन्यवाद:
regex का उपयोग करने के लिए कोई जरूरत नहीं है! उसने ऐसा किया – George