找回密码
 加入
搜索
楼主: joint

[AU3基础] MsgBox显示像这种样子的数据怎么存为CSV格式? 已解决

  [复制链接]
发表于 2017-7-3 17:01:10 | 显示全部楼层
数据在变量里。。。。那就直接Local $Txt = $sText
 楼主| 发表于 2017-7-3 17:14:14 | 显示全部楼层
回复 16# yamakawa

明天再试下,刚才重启软件后,临时数据都没了,存盘的是我已经修改过的,看不出问题。
发表于 2017-7-3 20:24:53 | 显示全部楼层
本帖最后由 yamakawa 于 2017-7-3 20:33 编辑

回复 17# joint
    $Txt = StringRegExpReplace($Txt,'""'," ")
$Txt = StringRegExpReplace($Txt,'(?im)(?:")(\V+?)\h(\V+)\h(\V+?)\h(\V+?)"',' $1,$2,$3,$4 ')
主要就是这两行代码,,替换你原来代码中所有的stringreplace语句

闲的没事做,把你给的那个附件又转回原形,然后测试,截图。。。楼主的要求应该是这样的吧。。第二列随机位置出现空格

本帖子中包含更多资源

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

×
 楼主| 发表于 2017-7-3 21:31:31 | 显示全部楼层
回复  joint 主要就是这两行代码,,替换你原来代码中所有的stringreplace语句

闲的没事做,把你给的那个 ...
yamakawa 发表于 2017-7-3 20:24


应该是的,就是因为空格的不标准不一致导致了替换后出现了分割符的错位。
还没看过正则方面的内容,所以用笨办法做的替换,你的方法应该才是合理的处理方式。明天我再试试。
非常感谢。
 楼主| 发表于 2017-7-4 10:11:02 | 显示全部楼层
回复 18# yamakawa

单独执行时好像没问题,但和其它代码一起执行就出错,分别存储文件后发现输出格式上有差异:
因为原来考虑还要读取代码,而0开头的代码按数字格式的话读取时前面的0会被消去,为保险起见,改成了字符类型(但本列中不包含代码)。所以我的输出格式是这样的:
"time","name","type","value"
"↓09:44","永辉超市","加速下跌","-2.1%"
"◆09:44","惠发股份","大笔卖出","326"
"◆09:44","科锐国际","大笔卖出","541"
"↑09:44","青龙管业","火箭发射","1.0%"
"↓09:44","金牌厨柜","高台跳水","5.3%"
"◆09:44","我乐家居","大笔买入","608"
"◆09:44","世名科技","大笔买入","183"
"↓09:44","长久物流","加速下跌","-1.7%"
"↓09:44","格力电器","打压指数","0.51点"
"◆09:44","必创科技","大笔卖出","186"
"◆09:44","华体科技","大笔卖出","562"
"↑09:44","云南锗业","火箭发射","4.6%"
"↑09:44","创新股份","火箭发射","3.8%"


你的代码处理后是这样的:
time,name,type,value
◆09:44,杭州园林,大笔买入,198
↓09:44,恒通科技,高台跳水,2.1%
↑09:44,  安奈儿,火箭发射,2.8%
↑09:44,中矿资源,火箭发射,2.7%
◆09:44,必创科技,大笔卖出,247
↑09:44,上海洗霸,火箭发射,1.8%
◆09:44,弘信电子,大笔卖出,343
◆09:44,科锐国际,大笔买入,721
◆09:44,华体科技,大笔卖出,267
◆09:44,天马科技,大笔卖出,765
◆09:44,必创科技,大笔卖出,1046
◆09:44,杰恩设计,大笔买入,267
↓09:44,永辉超市,加速下跌,-2.1%
◆09:44,惠发股份,大笔卖出,326

对正则不熟,你的代码我还看不大懂,麻烦再改下我再试试。谢谢。
发表于 2017-7-4 11:09:07 | 显示全部楼层
本帖最后由 yamakawa 于 2017-7-4 11:10 编辑

回复 20# joint


。郁闷,,怎么贴代码就错误。。。
$Txt = StringRegExpReplace($Txt,'(?im)^"(\V+?)\h(\V+)\h(\V+?)\h(\V+?)",'"$1","$2","$3","$4"')
 楼主| 发表于 2017-7-4 11:43:30 | 显示全部楼层
本帖最后由 joint 于 2017-7-4 11:45 编辑
回复  joint
。郁闷,,怎么贴代码就错误。。。
yamakawa 发表于 2017-7-4 11:09


还是有点问题

本帖子中包含更多资源

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

×
发表于 2017-7-4 11:48:07 | 显示全部楼层
本帖最后由 yamakawa 于 2017-7-4 11:49 编辑

抱歉。。。。直接在网页上写代码,,,没纠错,,
$Txt = StringRegExpReplace($Txt,'(?im)^"(\V+?)\h(\V+)\h(\V+?)\h(\V+?)"','"$1","$2","$3","$4"')
就少了一个单引号。。。。
 楼主| 发表于 2017-7-4 12:01:27 | 显示全部楼层
本帖最后由 joint 于 2017-7-4 12:04 编辑
抱歉。。。。直接在网页上写代码,,,没纠错,,就少了一个单引号。。。。
yamakawa 发表于 2017-7-4 11:48


谢谢,这次不报错了,看起来和我原来的格式也没什么区别,但做下述处理时,
dz['time']=dz['time'].str[1:]
dz['value']=dz['value'].str.replace("点","")
dz['value']=dz['value'].str.replace("%","")
也就是把时间前面的符号和后面的字符型符号去掉。
原来的没问题,你这个会提示:SyntaxError: invalid syntax
我还没搞清楚是怎么回事。
吃完饭再看看。
发表于 2017-7-4 12:13:52 | 显示全部楼层
本帖最后由 yamakawa 于 2017-7-4 12:20 编辑

回复 24# joint


    这就要看你自己了。我没学过p语言

那句英文意思是 语法错误
 楼主| 发表于 2017-7-4 12:26:55 | 显示全部楼层
本帖最后由 joint 于 2017-7-4 12:30 编辑
回复  joint
    这就要看你自己了。我没学过p语言
那句英文意思是 语法错误
yamakawa 发表于 2017-7-4 12:13


我知道是提示语法错误,只是比较奇怪两个看起来已经完全一样的文本居然会有不同的结果。随后我再仔细比较下差别在什么地方。

本帖子中包含更多资源

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

×
 楼主| 发表于 2017-7-4 13:07:00 | 显示全部楼层
仔细对比文本,就发现第二列有点差别,但我也没对第二列做什么操作啊,真是奇怪。

本帖子中包含更多资源

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

×
发表于 2017-7-4 13:39:45 | 显示全部楼层
回复 27# joint


    第二列文字的首字是空格导致的?那去掉空格试试
   第一个\h后面加个+试试
 楼主| 发表于 2017-7-4 15:19:51 | 显示全部楼层
回复  joint
    第二列文字的首字是空格导致的?那去掉空格试试
   第一个\h后面加个+试试
yamakawa 发表于 2017-7-4 13:39


好,谢谢。
发表于 2017-7-4 19:40:01 | 显示全部楼层
本帖最后由 chzj589 于 2017-7-4 19:57 编辑

不好意思

本帖子中包含更多资源

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

×
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-4-20 21:52 , Processed in 0.075967 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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