Python - re.findall returns unwanted result

前端 未结 3 1985
栀梦
栀梦 2020-11-29 13:14
re.findall(\"(100|[0-9][0-9]|[0-9])%\", \"89%\")

This returns only result [89] and I need to return the whole 89%. Any ideas how to do

3条回答
  •  温柔的废话
    2020-11-29 14:07

    The trivial solution:

    >>> re.findall("(100%|[0-9][0-9]%|[0-9]%)","89%")
    ['89%']
    

    More beautiful solution:

    >>> re.findall("(100%|[0-9]{1,2}%)","89%")
    ['89%']
    

    The prettiest solution:

    >>> re.findall("(?:100|[0-9]{1,2})%","89%")
    ['89%']
    

提交回复
热议问题