Python Forum
Regular expression to print maching
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Regular expression to print maching
#1
Hi All,


something is going wrong, I am not able to print matching pattern in line.

import re
import atexit
import paramiko
import time
import logging
import time

stat_time = time.time()
class myssh:
      def __init__(self, host, user, password, port = 22):
        client = paramiko.SSHClient()
        client.load_system_host_keys()
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        client.connect(host, port=port, username=user, password=password)
        atexit.register(client.close)
        self.client = client

      def __call__(self, command):
        stdin,stdout,stderr = self.client.exec_command(command)
        sshdata = stdout.readlines()
        for line in sshdata:
            if 'ME:' in line:
                pattern = r'(?<=\<).+?(?=\>)'
                match = re.search(pattern, line,re.M|re.I)
                print match.group()
remote = myssh('172.23.6.6','nms','nms')
remote('/opt/NMS/server/bin/NMSState')
sample line is

ME:<PUN_Cognizant_PH3_2_XDM900> IP:<192.9.99.41> Core Upload:<UPLOADED> Full Upload:<UPLOADED>

expected output
PUN_Cognizant_PH3_2_XDM900 192.9.99.41 UPLOADED

please support.
Reply
#2
Use print(re.findall(pattern, line, re.M | re.I)). Why do you need the flags?
Reply
#3
Sorry, Gribouillis.

its still not working.
Reply
#4
(Apr-23-2018, 11:20 AM)anna Wrote: its still not working.
This is not an error message sent by the python interpreter.
Reply
#5
suggested changes

import paramiko
import time
import logging
import time

stat_time = time.time()
class myssh:
      def __init__(self, host, user, password, port = 22):
        client = paramiko.SSHClient()
        client.load_system_host_keys()
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        client.connect(host, port=port, username=user, password=password)
        atexit.register(client.close)
        self.client = client

      def __call__(self, command):
        stdin,stdout,stderr = self.client.exec_command(command)
        sshdata = stdout.readlines()
        list1=[]
        for line in sshdata:
            if 'ME:' in line:
                pattern = r'(?<=\<).+?(?=\>)'
                #match = re.search(pattern, line,re.M|re.I)
                print(re.findall(pattern, line))


remote = myssh('172.23.6.6','nms','nms')
remote('/opt/NMS/server/bin/NMSState')
total_time=time.time()- stat_time
print('It took', time.time()- stat_time, 'seconds.')
and output without error, its showing blank

Output:
('It took', 18.975914001464844, 'seconds.')
sample output from command line

Output:
ME:<PUN_RanjangaonXDM-500> IP:<192.9.97.193> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4836> Full Upload:<UPLOADED> ME:<KOL_GULMOHAR_SOLAPUR_XDM3K> IP:<192.9.73.208> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4440> Full Upload:<UPLOADED> ME:<PUN_PARINAY_MANGAL_XDM900> IP:<192.9.37.59> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8160> Full Upload:<UPLOADED> ME:<UNINOR_MAGARPATTA_XDM300> IP:<192.9.54.2> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~28153> Full Upload:<UPLOADED> ME:<KOL_KOLHAPUR_SW_XDM3000> IP:<192.9.71.145> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~6588> Full Upload:<UPLOADED> ME:<PUN_HINJEWADI_XDM900> IP:<192.9.36.112> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~5924> Full Upload:<UPLOADED> ME:<PUN_NAGRAS_XDM900> IP:<192.9.94.29> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8864> Full Upload:<UPLOADED> ME:<Solapur_City_Pride_BSC_XDM100> IP:<192.9.73.207> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8716> Full Upload:<UPLOADED> ME:<NGP_XDM100-3> IP:<192.9.73.1> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4383> Full Upload:<UPLOADED> ME:<PUN_Bhosari_Unitech_BSC> IP:<192.9.51.98> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~51098> Full Upload:<UPLOADED> ME:<NGP_Selsura_XDM-100> IP:<192.9.92.90> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4619> Full Upload:<UPLOADED> ME:<NSK_Sakri-XDM100> IP:<192.9.63.22> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~3657> Full Upload:<UPLOADED> ME:<PUN_XDM_100_3> IP:<192.9.38.66> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2971> Full Upload:<UPLOADED> ME:<NSK_Nawapur-XDM100> IP:<192.9.235.35> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2658> Full Upload:<UPLOADED> ME:<NGP_VODAFONE_BPL_XDM100> IP:<192.9.43.40> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4366> Full Upload:<UPLOADED> ME:<ARGB_VASANT_TEKADI_XDM300> IP:<192.9.64.138> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~7062> Full Upload:<UPLOADED> ME:<PUN_WIPRO-XDM100> IP:<192.9.99.38> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~36110> Full Upload:<UPLOADED> ME:<Magarpatta-T6> IP:<192.9.54.66> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8154> Full Upload:<UPLOADED> ME:<NashikSwitch_3000> IP:<192.9.48.131> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8131> Full Upload:<UPLOADED> ME:<NasikXDM-100-2> IP:<192.9.48.130> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8130> Full Upload:<UPLOADED> ME:<TTSL_DXC_NAGPUR_XDM_100_12> IP:<192.9.242.9> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~24202> Full Upload:<UPLOADED> ME:<NGP_Nandura_VIOM> IP:<192.9.170.3> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4667> Full Upload:<UPLOADED> ME:<NGP_BoriTrimurti-XDM-100_viom> IP:<192.9.83.1> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~3984> Full Upload:<UPLOADED> ME:<Techno_BB2> IP:<192.9.89.105> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~37134> Full Upload:<UPLOADED> ME:<SILLOD_XDM100> IP:<192.9.63.71> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2433> Full Upload:<UPLOADED> ME:<NGP_PULGAON-XDM100_IDEA> IP:<192.9.92.89> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4620> Full Upload:<UPLOADED> ME:<FulambriXDM-100> IP:<192.9.63.77> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2474> Full Upload:<UPLOADED> ME:<NGP_DEORI_XDM-100_VIOM> IP:<192.9.95.142> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4616> Full Upload:<UPLOADED> ME:<LoniXDM> IP:<192.9.64.159> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4823> Full Upload:<UPLOADED> ME:<GOA_TALERE_XDM-100> IP:<192.9.97.150> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~20201> Full Upload:<UPLOADED> ME:<KOL_Tuljapur_XDM100> IP:<192.9.240.149> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4439> Full Upload:<UPLOADED> ME:<NSK_XLOPOINT> IP:<192.9.241.66> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~62235> Full Upload:<UPLOADED> ME:<NSK_XDM_Pimpalgaon> IP:<192.9.55.19> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4829> Full Upload:<UPLOADED> ME:<GOA-Tristar-XDM-100-1> IP:<192.9.47.129> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~477> Full Upload:<UPLOADED> ME:<PUN_XDM100-2NEW> IP:<192.9.40.13> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4013> Full Upload:<UPLOADED> ME:<GOA-Karmali_station> IP:<192.9.47.29> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~1> Full Upload:<UPLOADED> ME:<KOL_GARGOTI_XDM100> IP:<192.9.87.139> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2065> Full Upload:<UPLOADED> ME:<NSK_DHULE_BSC_XDM1000> IP:<192.9.236.191> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~23691> Full Upload:<UPLOADED> ME:<NSK_EDALABAD_BSC_XDM_2000> IP:<192.9.240.87> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~150> Full Upload:<UPLOADED> ME:<NGP_AIRTELXDM-100_> IP:<192.9.43.30> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~43113> Full Upload:<UPLOADED> ME:<KOL_KOLHAPUR_SWITCH_XDM900_1> IP:<192.9.71.137> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~44037> Full Upload:<UPLOADED> ME:<NGP_Chandur_Railway_XDM100_viom> IP:<192.9.92.88> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4624> Full Upload:<UPLOADED> ME:<PUN_GOYAL_XDM900> IP:<192.9.36.135> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8942> Full Upload:<UPLOADED> ME:<POLADPUR_XDM100> IP:<192.9.24.2> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~20197> Full Upload:<UPLOADED> ME:<KOL_PALUS_XDM300> IP:<192.9.80.153> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8024> Full Upload:<UPLOADED> ME:<KOL_XDM-100-2nd> IP:<192.9.71.136> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~432> Full Upload:<UPLOADED> ME:<KOL_ASHRAY_LODGE-XDM100> IP:<192.9.237.50> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~23765> Full Upload:<UPLOADED> ME:<NGP_XDM100_idea_IDEA> IP:<192.9.43.34> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4367> Full Upload:<UPLOADED> ME:<PUN_Jagdamba_XDM100> IP:<192.9.97.64> Core Upload:<UPLOADED> Full Upload:<UPLOADED> SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8656> Full Upload:<UPLOADED> ME:<NGP_NAGPUR_XDM100-5_TTML> IP:<192.9.84.1> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
Reply
#6
Here is what I get in a python 3 console
>>> import re
>>> line= "ME:<KOL_XDM-100-2nd> IP:<192.9.71.136> Core Upload:<UPLOADED> Full Upload:<UPLOADED>"
>>> pattern = r'(?<=\<).+?(?=\>)'
>>> print(re.findall(pattern, line))
['KOL_XDM-100-2nd', '192.9.71.136', 'UPLOADED', 'UPLOADED']
Can you print repr(line) for a few lines in order to check the data?
Reply
#7
re.findall is working while reading file, however its not matching when parsing data line by line.

Python 3 console is not showing error, output is blank
Reply
#8
(Apr-23-2018, 04:33 PM)anna Wrote: however its not matching when parsing data line by line.
That's why it would be useful to print(repr(line))
Reply
#9
Gribouillis Thanks,

actual issue is command is printing incomplete data, first 1000+ line are not having 'ME:' in line, but script is coming out before that, where to implement time.sleep in this case?
Reply
#10
(Apr-24-2018, 06:52 AM)anna Wrote: where to implement time.sleep in this case?
Using time.sleep() is not the solution. If the script exits, you need to understand why
  • Is there an exception traceback?
  • Does the remote command execute successfully? Your program needs to check this.
  • Does the stdout.readlines() read all the lines that you're expecting. If not, why?
  • Is there anything in the command's stderr stream?
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  data validation with specific regular expression shaheen07 0 342 Jan-12-2024, 07:56 AM
Last Post: shaheen07
  Regular Expression search to comment lines of code Gman2233 5 1,697 Sep-08-2022, 06:57 AM
Last Post: ndc85430
  List Creation and Position of Continue Statement In Regular Expression Code new_coder_231013 3 1,675 Jun-15-2022, 12:00 PM
Last Post: new_coder_231013
  Need help with my code (regular expression) shailc 5 1,942 Apr-04-2022, 07:34 PM
Last Post: shailc
  Regular Expression for matching words xinyulon 1 2,184 Mar-09-2022, 10:34 PM
Last Post: snippsat
  regular expression question Skaperen 4 2,509 Aug-23-2021, 06:01 PM
Last Post: Skaperen
  How can I find all combinations with a regular expression? AlekseyPython 0 1,681 Jun-23-2021, 04:48 PM
Last Post: AlekseyPython
  Python Regular expression, small sample works but not on file Acernz 5 2,954 Jun-09-2021, 08:27 PM
Last Post: bowlofred
  Regular expression: cannot find 1st number in a string Pavel_47 2 2,427 Jan-15-2021, 04:39 PM
Last Post: bowlofred
  Regular expression: return string, not list Pavel_47 3 2,506 Jan-14-2021, 11:49 AM
Last Post: Pavel_47

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020