On 30Mar2018 11:46, Iranna Mathapati <iranna.gan...@gmail.com> wrote:
how to achieve fallowing expected output?

str_output= """

MOD1 memory                              : 2 valid    1790 free
MOD2 memory                              : 128 valid   128 free
UDP Aware *MEMR*                            : 0 valid   0 free *MEMR
                                  : 21 valid   491 free
<<<<<expecting *
Feature XYZ                              : 3 valid    13 free
Feature PQR                       : 0 valid 16 free
Feature MNO                        : 0 valid 2 free

"""

i am going to grep MEM values alone and i have tried fallowing Regex:

re.findall(r'MEMR\s+\:\s+([0-9]+)\s+valid \s+([0-9]+)\s+free ', str_output)

it produce fallowing output::
[('0', '0'), ('21', '491')]

Expected output and i am expecting fallowing output::
*[('21' ,'491')]  <<<<< how to achieve this output?*

I get an empty list with your str_output text. Is it intact above? Or modified by the mail program?

That said, I see that your regexp ends with "free ". Are you sure there is a space after the word "free" in your input data? There doesn't seems to be one in your email. Because your regexp requires a final space, if there isn't one in the input then it will not match.

It may be that your original data has this final space, hence your matches.

In which case, there are two "MEMR" words in your input data. Are there really asterisks ("*") in the input data? Or are they for emphasis? I ask because you've got some lines ending in "::" in your email, which is suggestive of some formatting.

So, supposing that the asterisks are not there, you have two "MEMR : N valid M free" strings up there. It sounds like you want only the nonzero one. Notice that your regexp includes:

 [0-9]+

to match 1 or more digits. If you don't want to recognise zero values, consider that any such number doesn't commence with a "0" digit. How would you modify the regexp above to be more picky?

Cheers,
Cameron Simpson <c...@cskk.id.au>
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to