python 浮点正则表达式:匹配任何有效python浮点值的正则表达式。请参阅操作https://regex101.com/r/ObowxD/5

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 浮点正则表达式:匹配任何有效python浮点值的正则表达式。请参阅操作https://regex101.com/r/ObowxD/5相关的知识,希望对你有一定的参考价值。

# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility

import re

regex = r"""
    (?xm)
    (?:\s|^)
    ([-+]*(?:\d+\.\d*|\.?\d+)(?:[eE][-+]?\d+)?)
    (?=\s|$)
    """

test_str = ("0.2 2.1 3.1 ab 3 c abc23\n"
    "4534.34534345\n"
    ".456456\n"
    "1.\n"
    "1e545\n"
    "1.1e435ff\n"
    ".1e232\n"
    "1.e343\n"
    "1231ggg\n"
    "112E+12\n"
    "4\n"
    "5545ggg\n"
    "dfgdf.5444\n"
    "12312.1231\n"
    ".1231\n"
    "1231\n"
    "1.wrr\n"
    "1 34345 234 -121\n"
    "177\n"
    "-1e+ -1e+0 1e-1")

matches = re.finditer(regex, test_str)

for matchNum, match in enumerate(matches):
    matchNum = matchNum + 1
    
    print ("Match {matchNum} was found at {start}-{end}: {match}".format(
        matchNum=matchNum,
        start=match.start(),
        end=match.end(),
        match=repr(match.group())))
    
    for groupNum in range(0, len(match.groups())):
        groupNum = groupNum + 1
        
        print ("\tGroup {groupNum} found at {start}-{end}: {group}".format(
            groupNum=groupNum, start=match.start(groupNum), end=match.end(groupNum), 
            group=match.group(groupNum)))

以上是关于python 浮点正则表达式:匹配任何有效python浮点值的正则表达式。请参阅操作https://regex101.com/r/ObowxD/5的主要内容,如果未能解决你的问题,请参考以下文章

python基础——正则表达式

我可以使用啥正则表达式来匹配以点十进制表示法表示的任何有效 IP 地址?

正则分析——将浮点数点左边的数每三位添加一个逗号

Python 正则表达式 findall 有效,但匹配不 [重复]

《python核心编程》——正则表达式学习笔记(课后练习)

Python 深入正则表达式