为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言例程 正文

通用游戏文本识别格式化处理

三叶资源网 2019-08-03 10:39:02 易语言例程 1225 ℃ 0 评论

通用游戏文本识别格式化处理

.版本 2
.支持库 spec

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕
.局部变量 c
.局部变量 s, 文本型
.局部变量 t
.局部变量 ret, 文本型

输出调试文本 (文本组合处理_纯正则 (“改对子10 改豹子100哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”))
输出调试文本 (文本组合处理_算法 (“改对子10 改豹子100哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”))

c = 100
s = 取重复文本 (20, “改对子10 改豹子100哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”)
t = 取启动时间 ()
.计次循环首 (c, )
    ret = 文本组合处理_纯正则 (s)
.计次循环尾 ()
调试输出 (“正则”, 取启动时间 () - t, ret)
t = 取启动时间 ()
.计次循环首 (c, )
    ret = 文本组合处理_算法 (s)
.计次循环尾 ()
调试输出 (“算法”, 取启动时间 () - t, ret)

返回 ()
输出调试文本 (文本组合处理_纯正则 (“改对子10 改豹子100哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”))
输出调试文本 (文本组合处理_算法 (“改对子10 改豹子100哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”))
输出调试文本 (文本组合处理_纯正则 (“哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”))
输出调试文本 (文本组合处理_算法 (“哈大14.100大树10 子100对100 100锤子100.13 14.100狗100  50丫50小  45.5”))

输出调试文本 (文本组合处理_算法 (“狗100 50丫50小 45.50”))  ' 狗100 50丫 50小 45.50
输出调试文本 (文本组合处理_算法 (“第100你日50大50 88.50”))  ' 第100 你日50 大50 88.50
输出调试文本 (文本组合处理_算法 (“搞100 50大人50小河 19.50”))  ' 搞100 50大人 50小河 19.50
输出调试文本 (文本组合处理_算法 (“大树子100对100 100锤子100.13 14.100”))  ' 大树子100 对100 100锤子 100.13 14.100

.子程序 文本组合处理_算法, 文本型
.参数 文本内容, 文本型
.局部变量 正则, 正则表达式类
.局部变量 str, 文本型
.局部变量 子文本, 文本型
.局部变量 n, 整数型
.局部变量 i, 整数型
.局部变量 acs, 整数型
.局部变量 type, 整数型, , , 0=未知,1=数字汉字,2=汉字数字,3=小数型
.局部变量 汉字结束, 逻辑型
.局部变量 数字结束, 逻辑型
.局部变量 新文本, 文本型

str = 文本内容
正则.创建 (“d+\.\d+”, str)
.计次循环首 (正则.取匹配数量 (), i)
    子文本 = 正则.取匹配文本 (i)
    str = 子文本替换 (str, 子文本, “ ” + 子文本 + “ ”, , , 真)
.计次循环尾 ()
str = str + “ ”
新文本 = “”
子文本 = “”
type = 0
n = 取文本长度 (str)
.变量循环首 (1, n, 1, i)
    acs = 取代码 (str, i)
    .如果真 (acs = 32)
        .如果真 (取文本长度 (子文本) > 0)
            新文本 = 新文本 + 子文本 + “ ”
            子文本 = “”
        .如果真结束
        type = 0
        到循环尾 ()
    .如果真结束
    .如果真 (acs = 46)
        type = #小数点型
        子文本 = 子文本 + 字符 (acs)
        到循环尾 ()
    .如果真结束
    .如果真 (type = 0)
        .判断开始 (acs > 47 且 acs < 58)
            type = #数字汉字
            数字结束 = 假
        .默认
            type = #汉字数字
            汉字结束 = 假
        .判断结束
        子文本 = 子文本 + 字符 (acs)
        到循环尾 ()
    .如果真结束
    .如果真 (type = #汉字数字)
        .判断开始 (acs > 47 且 acs < 58)
            汉字结束 = 真
        .判断 (汉字结束 = 真)
            .如果真 (取文本长度 (子文本) > 0)
                新文本 = 新文本 + 子文本 + “ ”
                子文本 = “”
            .如果真结束
            type = #汉字数字
            汉字结束 = 假
        .默认

        .判断结束
        子文本 = 子文本 + 字符 (acs)
        到循环尾 ()
    .如果真结束
    .如果真 (type = #数字汉字)
        .判断开始 (acs > 47 且 acs < 58)
            .如果真 (数字结束)
                .如果真 (取文本长度 (子文本) > 0)
                    新文本 = 新文本 + 子文本 + “ ”
                    子文本 = “”
                .如果真结束
                type = #数字汉字
                数字结束 = 假
            .如果真结束

        .默认
            数字结束 = 真
        .判断结束
        子文本 = 子文本 + 字符 (acs)
        到循环尾 ()
    .如果真结束
    子文本 = 子文本 + 字符 (acs)
.变量循环尾 ()
返回 (删首尾空 (新文本))





.子程序 文本组合处理_纯正则, 文本型
.参数 参数_文本, 文本型
.局部变量 正则, 正则表达式类
.局部变量 i
.局部变量 局_返回文本, 文本型

正则.创建 (“哈(?:大单|小单|大双|小双|极大|极小|对子|顺子|豹子|大|小|单|双|\d+)|改?(?:\d+\.\d+|[\u4e00-\u9fa5]+\d+|\d+[\u4e00-\u9fa5]+)”, 参数_文本, , , , )
.计次循环首 (正则.取匹配数量 (), i)
    .如果真 (i = 1)
        局_返回文本 = 正则.取匹配文本 (i, )
        到循环尾 ()
    .如果真结束
    局_返回文本 = 局_返回文本 + “ ” + 正则.取匹配文本 (i, )
.计次循环尾 ()
返回 (局_返回文本)

@咱得有自己独特

文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
劲舞团键盘敲音乐支持库教程易语言源码CSDN微信登录人脸识别简历下载黑月教程强行兼容高DPI易CEF3浏览器支持库工厂模式公交查询系统自动审核进群奇易浏览框kktv异步套接字源码屏幕取色考勤机外挂QQ飞车
最新评论