import re
def extract_numbers_from_string(input_string):
# 使用正则表达式匹配所有数字(包括整数和小数)
numbers = re.findall(r'\d+\.?\d*', input_string)
# 将匹配到的字符串类型的数字转换为浮点数或整数
numbers = [float(num) if '.' in num else int(num) for num in numbers]
return numbers
# 示例
input_string = "价格是123.45元,数量是6个"
result = extract_numbers_from_string(input_string)
print(result) # 输出: [123.45, 6]
re 模块来进行正则表达式匹配。extract_numbers_from_string 函数接受一个字符串参数 input_string。re.findall(r'\d+\.?\d*', input_string) 用于匹配字符串中的所有数字,包括整数和小数。\d+ 匹配一个或多个数字,\.? 匹配可选的小数点,\d* 匹配零个或多个数字。希望这段代码和解释对你有帮助!
上一篇:python列表生成式
下一篇:python中列表和元组的区别
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站