यहाँ मेरी कोड है:अजगर regex खोज
#!/usr/bin/python
import io
import re
f = open('/etc/ssh/sshd_config','r')
strings = re.search(r'.*IgnoreR.*', f.read())
print(strings)
डेटा देता है यही कारण है कि, लेकिन मैं विशिष्ट रेगुलर एक्सप्रेशन मिलान की जरूरत है: उदाहरण के लिए:
^\s*[^#]*IgnoreRhosts\s+yes
अगर मैं अपने कोड बदलने बस के लिए:
strings = re.search(r'^IgnoreR.*', f.read())
या यहाँ तक कि
strings = re.search(r'^.*IgnoreR.*', f.read())
मुझे कुछ भी वापस नहीं मिला है।
#!/usr/bin/python
import io
import re
f = open('/etc/ssh/sshd_config','r')
strings = re.search(r"^\s*[^#]*IgnoreRhosts\s+yes", f.read(), flags=re.MULTILINE)
print(strings.group(0))
ध्यान दें कि इस विधा के बिना आप हमेशा \n
द्वारा ^
जगह ले सकता है: मैं
और आप 're.search (r"^\ s * [^ #] * IgnoreRhosts \ s + yes ", f.read()) का उपयोग क्यों नहीं कर रहे हैं? –
पायथन का रेगेक्स सिंटैक्स पेर्ल के – SethMMorton
जैसा ही है यदि^इग्न काम नहीं करता है, तो कोई तरीका नहीं है '^ \ s * [^ #] * IgnoreRhosts \ s + yes' काम करेगा। मैं सबसे कम आम denominator की तलाश में था। –