parsing a line of text to get a specific number

前端 未结 3 1307
隐瞒了意图╮
隐瞒了意图╮ 2021-01-26 00:03

I have a line of text in the form \" some spaces variable = 7 = \'0x07\' some more data\"

I want to parse it and get the number 7 from \

相关标签:
3条回答
  • 2021-01-26 01:00

    Basic regex code snippet to find numbers in a string.

    >>> import re
    >>> input = " some spaces variable = 7 = '0x07' some more data"
    >>> nums = re.findall("[0-9]*", input)
    >>> nums = [i for i in nums if i]  # remove empty strings
    >>> nums
    ['7', '0', '07']
    

    Check out the documentation and How-To on python.org.

    0 讨论(0)
  • 2021-01-26 01:01

    I would use a simpler solution, avoiding regular expressions.

    Split on '=' and get the value at the position you expect

    text = 'some spaces variable = 7 = ...'
    if '=' in text:
        chunks = text.split('=')
        assignedval = chunks[1]#second value, 7
        print 'assigned value is', assignedval
    else:
        print 'no assignment in line'
    
    0 讨论(0)
  • 2021-01-26 01:04

    Use a regular expression.

    Essentially, you create an expression that goes something like "variable = (\d+)", do a match, and then take the first group, which will give you the string 7. You can then convert it to an int.

    Read the tutorial in the link above.

    0 讨论(0)
提交回复
热议问题