使用以下正则表达式的下列模式用以提取文本中包含的数字:
pattern = r'[^+\-\d]*([+-]?\d+([.,]\d+)?).*'
模式 1:正整数
text = '123`
result = re.match(pattern, text)
print(result[1]) # => 123text = '+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.456text = '+123.456`
result = re.match(pattern, text)
print(result[1]) # => +123.456text = '-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