c语言编程笔录

您现在的位置是:首页 > 编程 > 编程经验

编程经验

python如何用正则匹配数字

王依婷 2023-07-09编程经验
正则表达式匹配Python内置了re模块,可以方便地使用正则表达式匹配。下面的代码展示了如何使用re模块匹配一个字符串中的数字:importres="abc123def"#匹配数字pattern=re.co

正则表达式匹配

Python内置了re模块,可以方便地使用正则表达式匹配。

下面的代码展示了如何使用re模块匹配一个字符串中的数字:

import re

s = "abc123def"

# 匹配数字
pattern = re.compile(r"\d+")
result = pattern.findall(s)
print(result)  # 输出 ['123']

在上面的示例中,我们创建了一个正则表达式对象,使用该对象的findall方法从字符串s中匹配数字,并将结果保存在变量result中。

匹配指定范围内的数字

有时候,我们需要匹配指定范围内的数字。例如,匹配大于等于1000的数字。

可以使用正则表达式的特殊语法来实现。在正则表达式中,可以使用大括号{}指定匹配数字的位数范围。

import re

s = "1000 abc 2000"

# 匹配大于等于1000的数字
pattern = re.compile(r"\d{4,}")
result = pattern.findall(s)
print(result)  # 输出 ['1000', '2000']

在上面的示例中,我们使用正则表达式'\d{4,}'匹配大于等于4位的数字。

匹配整数和小数

有时候,我们需要匹配整数和小数。

可以使用正则表达式实现。在正式表达式中,可以使用或操作符|来匹配整数和小数。

import re

s = "1 1.0 2.5"

# 匹配整数和小数
pattern = re.compile(r"\d+\.?\d*|\.\d+")
result = pattern.findall(s)
print(result)  # 输出 ['1', '1.0', '2.5']

在上面的示例中,我们使用正则表达式'\d+\.?\d*|\.\d+'来匹配整数和小数,并将结果保存在变量result中。

匹配科学计数法表示的数字

有时候,我们需要匹配科学计数法表示的数字。

可以使用正则表达式实现。在正则表达式中,可以使用小写e和大写E来匹配科学计数法中的e和E。

import re

s = "1.0e+3 2.5E-4"

# 匹配科学计数法表示的数字
pattern = re.compile(r"\d+\.?\d*[eE][+-]?\d+")
result = pattern.findall(s)
print(result)  # 输出 ['1.0e+3', '2.5E-4']

在上面的示例中,我们使用正则表达式'\d+\.?\d*[eE][+-]?\d+'来匹配科学计数法表示的数字,并将结果保存在变量result中。

文章评论