• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

发新话题 回复该主题

[问题] 高手进来!字符串,先分开,分别转化数值,相加 [复制链接]

1#
编程高手,请进来!

字符串:
--19万12万3.4亿
如何将字符串,按“亿”或者“万”分开,然后分别转化数值,再相加?
其中“-”为0.

计算过程,如下:
“-”等于0;
19万=190000;
12万=120000;
3.4亿=340000000

0+190000+120000+340000000=340310000

结果为:340310000

请编写一个函数,实现上面功能

2#

用正则表达式来取值 取^(\d+\.?\d*)( 万|亿)$ 这样就可以取出 XX万 XX亿 XX.xx万亿 然后判断 万亿 增加同样个数的0 或取到数值部分 万就直接*10000 亿就*亿 正则只取数字部分的表达式 \d+ 用个判断就可以,还可以取中文部分,如果只有万亿 就直接正则 [万]或者[亿]就可以了 如果还有其他字符 [\u4e00-\u9fa5] 这个表达式可以匹配所有中文 加个判断 if 正则匹配返回=“万” 如何如何 以此类推 转换成数值int() 然后相加就可以了 不可能给你完整代码的 思路就是这么个思路 不懂的可以私信我

3#

如果 - 只表示0的话 在加减上没有任何用途 所以直接扔了就行

4#

如果-号还有其他用途 那就这么搞 a="--19万12万3.4亿" 1. 用for 判断 for len(a) 然后取A左边的字符 判断是否 - 如果成立 b=b& 0 如果用正则 取\- 正则是可以判断出现了几次 - 所以自己添加就可以了

发新话题 回复该主题