में सहेज मैं एक पाठ फ़ाइल जो फ़ाइलों पथ के बहुत सारे file.txt धारण करने के लिए:उपयोग Regex फ़ाइल पथ निकालने और अजगर
C:\data\AS\WO\AS_WOP_1PPPPPP20070506.bin
C:\data\AS\WO\AS_WOP_1PPPPPP20070606.bin
C:\data\AS\WO\AS_WOP_1PPPPPP20070708.bin
C:\data\AS\WO\AS_WOP_1PPPPPP20070808.bin
...
क्या मैं Regex के साथ किया था से तारीख को निकालने के लिए पथ:
import re
textfile = open('file.txt', 'r')
filetext = textfile.read()
textfile.close()
data = []
for line in filetext:
matches = re.search("AS_[A-Z]{3}_(.{7})([0-9]{4})([0-9]{2})([0-9]{2})", line)
data.append(line)
यह मुझे जो चाहिए वह नहीं देता है।
मेरे उत्पादन इस तरह होना चाहिए:
year month
2007 05
2007 06
2007 07
2007 08
और फिर सूचियों की सूची के रूप में सहेज:
[['2007', '5'], ['2007', '6'], ['2007', '7'], ['2007', '8']]
या एक पांडा श्रृंखला रूप सहेजें।
क्या मैं चाहता हूं कि regex
के साथ कोई रास्ता है!
आप कहते हैं कि उत्पादन तुम क्या उम्मीद कर रहे थे नहीं है, लेकिन मैं नहीं दिख रहा है कि अपने कोड किसी भी उत्पादन बिल्कुल भी पैदा करता है । –
'textfile.read()' फ़ाइल की पूरी सामग्री को एक लंबी स्ट्रिंग के रूप में लौटाता है। 'फ़ाइल टेक्स्ट' लूप में लाइन के लिए प्रत्येक ** वर्ण ** पर लूपिंग है। –
@ जॉन-गॉर्डन बिल्कुल, मुझे प्रत्येक चरित्र स्ट्रिंग मिल गई। और भी readline() मुझे सिर्फ पहली पंक्ति फिर चरित्र की स्ट्रिंग – GeoCom