怎样获得文本列表中每个文本最后数字,并且相加?

动作需求 · 452 次浏览
Taitun 创建于 2023-11-24 13:23

需求:获取的文件名列表A,如下:
蓝色、1
红色、3
白色、1.5
粉色、2

每个文件名最后面有个数字,个别是带小数点的,其他是整数

问题:怎样将每个文件名后面的数字获取出来,并且相加,如1+3+1.5+2=7.5?


回复内容
CL 2023-11-24 13:40
#1

一般用正则提取,得到目标数据之后,再根据需求做叠加或其它处理。

Taitun 回复 CL 2023-11-24 13:42 :

正则提取,目前还是盲区,还得继续学习

乐昂岚 回复 Taitun 2023-11-24 14:44 :
正则表达式写 [0-9.-]+
Taitun 回复 乐昂岚 2023-11-24 15:38 :

大佬,按你的正则表达式,可以将文件名列表A,如下:

蓝色、1
红色、3
白色。1.5
粉色。2

把数字1  3  1.5  2提取出来,但如果文件名列表A,如下:

蓝色、1
红色、3
白色61。1.5
粉色。2

提取的数字是1  3  61  2,第三个应该是1.5才对。如果要提取匹配相的组、或。后面的数字,正则表达式要怎么写?




乐昂岚 回复 Taitun 2023-11-24 15:40 :

(?<=[\、\。])[0-9.-]+


Taitun 回复 乐昂岚 2023-11-24 15:42 :

提取成功,非常感谢大佬的指点

Taitun 回复 CL 2023-11-24 16:04 :

谢谢大佬们,问题已解决

Taitun 最后更新于 2023-11-24 16:33
Melina 2023-11-24 13:49
#2
  1. 定义一个变量sum,设为0
  2. 遍历列表
  3. 正则提取每一项\d+(\.\d+)?
  4. sum = sum+提取的值
  5. over
Taitun 回复 Melina 2023-11-24 13:58 :

非常感谢大佬的指点

在看大佬“咿呀杀杀”正则提取示例。

CL 2023-11-24 14:13
#3

如果只是求和,可以试试大佬分享的动作  复制求和值 - by 湘喑 - 动作信息 - Quicker

回复主贴