找回密码
 加入
搜索
查看: 1767|回复: 6

[AU3基础] 【已解决】有啥正则能最快的替换里面的大写为阿拉伯数字吗?

  [复制链接]
发表于 2017-7-10 21:43:37 | 显示全部楼层 |阅读模式
本帖最后由 862228699 于 2017-7-11 13:21 编辑

这是一个摩托车仪表生产厂,数据从软件导出来的。
[img][/img]
里面的数量全是大写。想把大写变成阿拉伯数字。

谢谢大神指教。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2017-7-10 22:23:00 | 显示全部楼层
坐等大神
 楼主| 发表于 2017-7-10 22:32:07 | 显示全部楼层
回复 2# haijie1223


    各自开你的车去。。。。
发表于 2017-7-10 23:46:58 | 显示全部楼层
本帖最后由 yamakawa 于 2017-7-10 23:53 编辑

俺的code用了 0.57秒。。。。。。坐等高人
发表于 2017-7-11 01:36:32 | 显示全部楼层
Local $str = FileRead('大写转阿拉伯数字.txt')
Local $aNum[10][2] = [[0], [1, '壹'], [2, '贰'], [3, '叁'], [4, '肆'], [5, '伍'], [6, '陆'], [7, '柒'], [8, '捌'], [9, '玖']]
For $ii = 1 To 9
        $str = StringRegExpReplace($str, $aNum[$ii][1] & '拾(?= 个)', $aNum[$ii][0] & '0')
        $str = StringRegExpReplace($str, $aNum[$ii][1] & '拾(?=\S 个)', $aNum[$ii][0])
        $str = StringRegExpReplace($str, $aNum[$ii][1] & '(?= 个)', $aNum[$ii][0])
Next
FileWrite('大写转阿拉伯数字_1.txt', $str)
发表于 2017-7-11 09:17:49 | 显示全部楼层
 Local $dbfile = @ScriptDir & "\data.txt"
 Local $str = FileRead($dbfile)
 Local $Hi[10] = ["壹","贰","叁","肆","伍","陆","柒","捌","玖","拾"]
 Local $Lo[10] = [1,2,3,4,5,6,7,8,9,0]

 Local $time =TimerInit()
 For $i = 0 To 9
         $str = StringRegExpReplace($str,$Hi[9] & $hi[$i],$Lo[$i])
         $str = StringRegExpReplace($str,$Hi[$i],$Lo[$i])
 Next
 Local $timediff = TimerDiff($time)/1000
 
FileWrite('out.txt', $str)

MsgBox(0,"用时;" & $timediff & "秒",$str)
俺是这样弄的,先收拾 拾X。变成x
然后汉字转阿拉伯数字
 楼主| 发表于 2017-7-11 13:21:28 | 显示全部楼层
回复 5# afan
感谢Afan这方法确定方便了很多啊。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-24 10:35 , Processed in 0.071607 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表