2013-06-10 2 views
5

में मैं निम्नलिखित कोड है:अजगर - प्रिंट स्ट्रिंग स्क्रीन करने के लिए, शामिल हैं N उत्पादन

pattern = "something.*\n" #intended to be a regular expression 

fileString = some/path/to/file 

numMatches = len(re.findall(pattern, fileString, 0)) 

print "Found ", numMatches, " matches to ", pattern, " in file." 

मैं उपयोगकर्ता पैटर्न में शामिल देखने के लिए '\ n' सक्षम होना चाहते हैं। फिलहाल, पैटर्न में '\ n' स्क्रीन पर एक नई लाइन लिखता है। तो उत्पादन की तरह है:

Found 10 matches to something.* 
in file. 

और मैं इसे होना चाहते हैं:

Found 10 matches to something.*\n in file. 

हाँ, pattern.replace ("\ n" "\ n") कार्य करता है। लेकिन मैं इसे \ t, \ e आदि सहित सभी प्रकार के बचने वाले पात्रों को मुद्रित करना चाहता हूं। किसी भी मदद की सराहना की जाती है। और मिलान के लिए एक प्रदर्शित करने के लिए एक -

displayPattern = "something.*\\n" 
print "Found ", numMatches, " matches to ", displayPattern, " in file." 

आप पैटर्न के प्रत्येक मामले के लिए एक अलग स्ट्रिंग निर्दिष्ट करना होगा:

+0

यह पहले से ही कहा गया है इस बारे में हैं, उम्मीद है कि यह सही दिशा में बताते हैं: http://stackoverflow.com/questions/6477823/python-display-special-characters-when-using प्रिंट बयान – dkroy

+0

'displayPattern =" कुछ। * \ s "' 'उपयोग \ s'' 'रेपर (स्ट्रिंग)' के बजाय न्यू लाइन चरित्र – abhishekgarg

उत्तर

6

उपयोग repr(pattern)\n जिस तरह से आप की जरूरत है मुद्रित करने के लिए।

3

इस प्रयास करें। प्रदर्शन पैटर्न में, ध्यान दें कि \ चरित्र से कैसे बच रहा है: \\

displayPattern = repr(pattern) 
print "Found ", numMatches, " matches to ", displayPattern, " in file." 
0
print repr(string) 
#or 
print string.__repr__() 

आशा इस मदद करता है:

वैकल्पिक रूप से, बिल्ट-इन repr() समारोह का उपयोग करें।

+1

का प्रयोग क्यों 'स्ट्रिंग .__ रेपर __() को खोजने के लिए? –

+0

@ntpeterson मुझे नहीं पता था कि यह अभी तक अस्तित्व में है। इसे अभी बदल रहा है। – Drew

0

इसके अलावा एक और तरीका रेपर उपयोग करने के लिए% r प्रारूप स्ट्रिंग के साथ है। मैं सामान्य रूप से के रूप में

print "Found %d matches to %r in file." % (numMatches, pattern) 
संबंधित मुद्दे