精易论坛

标题: 提取txt指定内容 [打印本页]

作者: renwoxing    时间: 2018-10-27 16:56
标题: 提取txt指定内容
2018-10-11 15:30:30,明天开会5066
2018-10-11 15:31:20,后天聚餐206511
软件启动……
2018-10-11 16:15:20,明年提高工资
2018-10-12 09:06:15,努力工作566356
……
……很多行,省略
txt里面的内容在不断写入的。


用正则怎么匹配软件启动后的时间?或其他方法
用来提取(软件启动后)的信息,要逐行提取,提取过的过滤掉




补充内容 (2018-10-27 23:21):
bh256,13600005555,2018-10-27 13:22:02,大课间代扣代缴高风亮打肯定来得快【5006。】
软件启动……
内容会不停写入,格式都一样,
软件启动后自动检测新收到的内容,并提取出来,
发送到服务器端上
作者: 自私的家伙    时间: 2018-10-27 17:06
-- 写入的来源是什么?或者说 格式是你自己定义的?
作者: renwoxing    时间: 2018-10-27 17:12
心雨资源吧 发表于 2018-10-27 17:06
-- 写入的来源是什么?或者说 格式是你自己定义的?

是一个软件在不断写入的,写入的格式都是固定的,就是内容不一样
作者: 自私的家伙    时间: 2018-10-27 17:22
renwoxing 发表于 2018-10-27 17:12
是一个软件在不断写入的,写入的格式都是固定的,就是内容不一样

写入的格式是时间+文本?
作者: renwoxing    时间: 2018-10-27 17:26
心雨资源吧 发表于 2018-10-27 17:22
写入的格式是时间+文本?

写入的格式就是我发的那样的,时间+姓名+编号+文本内容
作者: 自私的家伙    时间: 2018-10-27 17:55
- -能把软件链接或者是文本格式发出来么 要批量的
作者: 纯情小黄牛    时间: 2018-10-27 18:15
TXT的来源是哪呢?
作者: jr21066    时间: 2018-10-27 20:58
例子来了..


screenshot_20181027_205749.jpg (14.18 KB, 下载次数: 3)

screenshot_20181027_205749.jpg

123.e

745.22 KB, 下载次数: 7


作者: renwoxing    时间: 2018-10-27 23:01
jr21066 发表于 2018-10-27 20:58
例子来了..

bh122,13512345678,2018-10-27 13:17:53,【明天】打卡机代扣代缴打开了觉得地方,请填写。【5006。。】
bh122,13655553356,2018-10-27 13:18:02,端口端口拉力赛人力来的金额累计倒的肺活量对方承担55652【5006。。】
bh66,13655553356,2018-10-27 13:19:02,大课间代扣代缴高风亮节多少了金额打肯定来得快【领导】【5006。。】
bh13,13512345678,2018-10-27 13:20:53,【测试】打卡机代扣代缴打开了觉得地方,请填写。【5006。。】
bh26,13955557777,2018-10-27 13:21:02,端口端拉力赛人力来的金额累计倒量对方承担55652【5006。。】
bh256,13600005555,2018-10-27 13:22:02,大课间代扣代缴高风亮节多少了金额打跌肯定来得快【领导】【5006。。】
软件启动……
内容会不停写入,格式都一样,编号、号码、时间、内容都不一样

软件启动后自动检测新收到的内容,并提取出来,
发送到服务器端上。(局域网)
作者: renwoxing    时间: 2018-10-27 23:01
bh122,13512345678,2018-10-27 13:17:53,【明天】打卡机代扣代缴打开了觉得地方,请填写。【5006。。】
bh122,13655553356,2018-10-27 13:18:02,端口端口拉力赛人力来的金额累计倒的肺活量对方承担55652【5006。。】
bh66,13655553356,2018-10-27 13:19:02,大课间代扣代缴高风亮节多少了金额打肯定来得快【领导】【5006。。】
bh13,13512345678,2018-10-27 13:20:53,【测试】打卡机代扣代缴打开了觉得地方,请填写。【5006。。】
bh26,13955557777,2018-10-27 13:21:02,端口端拉力赛人力来的金额累计倒量对方承担55652【5006。。】
bh256,13600005555,2018-10-27 13:22:02,大课间代扣代缴高风亮节多少了金额打跌肯定来得快【领导】【5006。。】
软件启动……
内容会不停写入,格式都一样,编号、号码、时间、内容都不一样

软件启动后自动检测新收到的内容,并提取出来,
发送到服务器端上。(局域网)
作者: jr21066    时间: 2018-10-27 23:24
修改好了.用逗号分割的.如果源数据格式不变的话就没问题了

123.e

745.81 KB, 下载次数: 5


作者: renwoxing    时间: 2018-10-28 00:25
jr21066 发表于 2018-10-27 23:24
修改好了.用逗号分割的.如果源数据格式不变的话就没问题了

取时间间隔 (当前时间值, 程序启动时间, #秒) = 0),这儿改成=0可以了,就是编辑框会同时加进去几条重复的内容。怎么只加一条啊。不重复加。
我设的时钟周期是500,因为有时同一秒会有几个信息。
作者: leiwawa001    时间: 2018-10-28 01:00
例子来了,跟个项目工作原理很像,作了个删减操作,主要操作部分跟你描述的很像

  1. .版本 2
  2. .支持库 spec
  3. .支持库 mysql

  4. .子程序 例子程序
  5. .参数 时间, 整数型
  6. .局部变量 sql, 文本型
  7. .局部变量 正则, 正则表达式类
  8. .局部变量 i, 整数型
  9. .局部变量 手机号, 文本型
  10. .局部变量 内容, 文本型
  11. .局部变量 验证码, 文本型
  12. .局部变量 时间1, 文本型
  13. .局部变量 加, 文本型
  14. .局部变量 表达式, 正则表达式类
  15. .局部变量 sql1, 文本型

  16. .判断循环首 (时钟线程ID ≠ 0)
  17.     这次读取的文本 = 到文本 (读入文件 (目录))  ' 时钟周期运行了,代表过了一秒了,从新读一次txt的内容
  18.     多出来的文本 = 子文本替换 (这次读取的文本, 上次读取的文本, “”, , , 真)
  19.     多出来的文本 = 取文本右边 (多出来的文本, 取文本长度 (多出来的文本) - 2)
  20.     .判断开始 (多出来的文本 ≠ “”)
  21.         正则.创建 (#正则, 多出来的文本, , , , )
  22.         .计次循环首 (正则.取匹配数量 (), i)
  23.             标准输出 (, 内容)
  24.             手机号 = 正则.取子匹配文本 (i, 2, )
  25.             时间1 = 正则.取子匹配文本 (i, 3, )
  26.             内容 = 正则.取子匹配文本 (i, 5, )
  27.             标准输出 (, 内容)
  28.             表达式.创建 (“([0-9]{1,})”, 内容, , , , )
  29.             调试输出 (表达式.取匹配数量 ())
  30.             验证码 = 表达式.取子匹配文本 (1, 1, )
  31.             sql = “insert into table_duanxin(mobile,time,note,status) values('” + 手机号 + “','” + 时间1 + “','” + 到文本 (编码_Ansi到Utf8 (内容)) + “','” + 验证码 + “')”
  32.             调试输出 (sql)
  33.             标准输出 (, #换行符)
  34.             标准输出 (, sql + #换行符 + #换行符)
  35.             .判断开始 (执行SQL语句 (mysql1, sql) = 真)
  36.                 标准输出 (, “发送成功 ” + #换行符)
  37.             .默认
  38.                 标准输出 (, “发送失败 ” + #换行符)
  39.             .判断结束

  40.         .计次循环尾 ()
  41.     .默认

  42.     .判断结束
  43.     上次读取的文本 = 这次读取的文本
  44.     Sleep (时间)
  45. .判断循环尾 ()
复制代码

作者: jr21066    时间: 2018-10-28 07:30
renwoxing 发表于 2018-10-28 00:25
取时间间隔 (当前时间值, 程序启动时间, #秒) = 0),这儿改成=0可以了,就是编辑框会同时加进去几条重复 ...

改成0只能取启动的那一秒了.
如果一秒有几条消息.除非加上毫秒.不然还是会有重复的
作者: 彭聪979862538    时间: 2018-10-28 10:52
一个超文本浏览,我教你
作者: renwoxing    时间: 2018-10-28 14:16
leiwawa001 发表于 2018-10-28 01:00
例子来了,跟个项目工作原理很像,作了个删减操作,主要操作部分跟你描述的很像

能给个易的例子吗?
作者: renwoxing    时间: 2018-10-28 14:23
jr21066 发表于 2018-10-28 07:30
改成0只能取启动的那一秒了.
如果一秒有几条消息.除非加上毫秒.不然还是会有重复的

改成0 就是取启动的那一秒的,因为启动的时间是现行时间
要提取的是即将出现的内容,不是软件启动前出现的内容。现在是能找到最新出现的内容,往编辑框里加的时候会重复加入(一秒内把一个内容重复加到编辑框),只加一次就行了

作者: leiwawa001    时间: 2018-10-28 14:44
我这个核心部分源码已经贴出来了,放在时钟里面就可以了。原理 就是这样,只会写出新的内容




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4