【Python】从文本中提取数字

2023-12-15 16:34:58

使用以下正则表达式的下列模式用以提取文本中包含的数字:

pattern = r'[^+\-\d]*([+-]?\d+([.,]\d+)?).*'

模式 1:正整数

text = '123`
result = re.match(pattern, text)
print(result[1])  # => 123

text = '+123`
result = re.match(pattern, text)
print(result[1])  # => +123

模式 2:负整数

text = '-123`
result = re.match(pattern, text)
print(result[1])  # => -123

模式 3:小数

text = '123.456`
result = re.match(pattern, text)
print(result[1])  # => 123.456

text = '+123.456`
result = re.match(pattern, text)
print(result[1])  # => +123.456

text = '-123.456`
result = re.match(pattern, text)
print(result[1])  # => -123.456

模式 4:包含数字和非数字字符

text = '今天气温-10.5度`
result = re.match(pattern, text)
print(result[1])  # => -10.5

模式 5:当小数点为 ,(欧洲的表示法)

text = '今天的气温是-10,5度`
result = re.match(pattern, text)
print(result[1])  # => -10,5

文章来源:https://blog.csdn.net/Allan_lam/article/details/135009543
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。