When i search for a pattern in a file how do i get the line and line#? basically i want to replicate the 'grep' command functionality. Now i can easily say whether the pattern exists or not using re.search funtion but i'm not able to print that particular line and line#. are there any functions in re module for that?
Maybe you need to do a line by line match in a loop and then line/line number shouldn't be a problem. I'm not sure how much slower it may be compared to what you're doing now but you can e.g. download a big plain-text e-book and do some tests.
There are several ways you could do this, however, this is one way.
file = open('your_file_here.txt')
lines = file.readlines()
pattern = re.compile('&(?!#)(?!amp;)(?!quot;)(?!lt;)(?!gt;)')
for i, line in enumerate(lines):
print i, line
if __name__ == '__main__':
In the above I am searching the "your_file_here.txt" file for just an ampersand "&" all by itself. The code will print out the line number and the line that was matched to the pattern.
For Each ctrl As Control In Me.Controls("pnlMainPanel").Controls
If ctrl.GetType Is GetType(System.Windows.Forms.Panel) Then
For Each subCtrl As Control In ctrl.Controls
If subCtrl.GetType Is GetType(System.Windows.Forms.TextBox) Then
If subCtrl.GetType Is ...