吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5635|回复: 34
收起左侧

[原创工具] 原创Autoit脚本开源软件分享(更新到v1.2)

[复制链接]
blfiag 发表于 2022-11-24 10:22
本帖最后由 blfiag 于 2022-11-25 21:46 编辑

应坛友 1314233 发布的 txt汉字章节批量替换为阿拉伯数字章节
为实现类似下面的小说章节
第一章 我爱你
正文
第二章 他爱你
正文
第三章 你爱他
正文
...
...
第两万一千八百二十六章 你爱他他不爱她他爱她
正文


把文字章节转换成阿拉伯数字章节
第1章 我爱你
正文
第2章 他爱你
正文
第3章 你爱他
正文
...
...
第21826章 你爱他他不爱她他爱她
正文


本人用小众脚本软件autoit做了一个简单的处理程序,
网友想学习其中的代码,故开源在此,给大家提供一种普通的思路。

#TextNovelChineseNumberToArabic 源码分享
#主要使用了正则替换和普通替换。
#大量替换直接枚举,没有加循环,更便于大家学习吧

$s=""
$file=FileOpenDialog("选择小说文本文件", @ScriptDir, "文本文件 (*.txt)|全部 (*.*)" )
$txt=FileRead($file)


$a=StringRegExp($txt, "第([一两二三四五六七八九十零〇百佰千仟万萬]+)章", 3)
If Not @Error Then
        For $i=0 to UBound($a)-1
                $s=$a[$i]
                if StringLeft($s, 1)="十" Then $s= "1" & StringMid($s, 2)
                $s=StringRegExpReplace($a[$i], "^十", "")
                $s=StringReplace($s, "十", "")
                $s=StringReplace($s, "百", "")
                $s=StringReplace($s, "佰", "")
                $s=StringReplace($s, "千", "")
                $s=StringReplace($s, "仟", "")
                $s=StringReplace($s, "万", "")
                $s=StringReplace($s, "萬", "")
                $s=StringReplace($s, "一", 1)
                $s=StringReplace($s, "两", 2)
                $s=StringReplace($s, "二", 2)
                $s=StringReplace($s, "三", 3)
                $s=StringReplace($s, "四", 4)
                $s=StringReplace($s, "五", 5)
                $s=StringReplace($s, "六", 6)
                $s=StringReplace($s, "七", 7)
                $s=StringReplace($s, "八", 8)
                $s=StringReplace($s, "九", 9)
                $s=StringReplace($s, "零", 0)
                $s=StringReplace($s, "〇", 0)
                ConsoleWrite($s & @LF)
                $txt=StringReplace($txt, "第" & $a[$i] & "章", "第" & $s & "章")
        Next
EndIf

If $s<>"" Then
        $newfile=StringReplace($file, ".", "_new.",-1)
        $fid=FileOpen($newfile, 2+8)
        FileWrite($fid , $txt)
        FileClose($fid)
        Msgbox(8192+64, "提示", "文本小说处理完毕,请自行检查" & @CRLF & "后缀_new在源文件目录处",3 )
Else
        Msgbox(8192+48, "提示", "文本小说未发现需要处理的中文数字", 3)
EndIf


#TextNovelChineseNumberToArabic 源码结束



完整代码与软件见  https://wwm.lanzout.com/iY0jf0gqpsfg (v1.0)




根据坛友提出的bug,只好不偷懒的用十进制逐渐累加
v1.2 直接放进压缩包内,大家可以再测试。 https://wwm.lanzout.com/iYfaR0gw74af


免费评分

参与人数 5吾爱币 +11 热心值 +5 收起 理由
zhuzhuxia9527 + 1 热心回复!
AG9000 + 1 + 1 我很赞同!
风之暇想 + 7 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
牛逼Plus + 2 + 1 听我说,谢谢你,因为有你,温暖了四季
goldengod + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

wkdxz 发表于 2022-11-24 10:28
特殊时候有大用处,谢谢分享!
头像被屏蔽
biqiang 发表于 2022-11-25 11:47
 楼主| blfiag 发表于 2022-11-24 10:30
weiekko 发表于 2022-11-24 10:43
好像正则表达式
zrz444 发表于 2022-11-24 10:52
本帖最后由 zrz444 于 2022-11-24 12:41 编辑

AUTOIT这个语言写点桌面小工具 蛮不错的。许多系统工具开始都用这个东西写。
cd159951 发表于 2022-11-24 11:43
感谢大佬分享 好用
雾都孤尔 发表于 2022-11-24 12:00
有点意思,感谢分享。
ysjd22 发表于 2022-11-24 12:10
很好谢谢,有时候想用的时候找不大到。
baitoje1235 发表于 2022-11-24 12:15
感谢分享,看小说必备啊
牛逼Plus 发表于 2022-11-24 15:19
灰常好用,感谢大佬开源,我的小说阅读器识别不出来“第一章”“第二章”,只能识别“第1章”“第2章”,昨天弄了好久也没转换成功,感谢大佬帮助
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 04:03

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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