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

[AU3基础] 【已解决】求正则语句

  [复制链接]
发表于 2014-8-5 16:41:35 | 显示全部楼层 |阅读模式
本帖最后由 fybhwsx 于 2014-8-5 22:20 编辑

超级图表-RM1501 1小时线
SR1501 5分钟线
TA1409 1日线
rb1501 15分钟线
RM1501 1小时线
m1501 1日线
c1501 1日线
如需帮助,请按F1键
帐户管理
PanelFrame
PanelFrame
WorkspaceTab

想要获取成:SR1501 5分钟线 | TA1409 1日线 | rb1501 15分钟线 | RM1501 1小时线 | m1501 1日线 | c1501 1日线
发表于 2014-8-5 17:40:55 | 显示全部楼层
Local $Str = _
                '超级图表-RM1501 1小时线' & @CRLF & _
                'SR1501 5分钟线' & @CRLF & _
                'TA1409 1日线' & @CRLF & _
                'rb1501 15分钟线' & @CRLF & _
                'RM1501 1小时线' & @CRLF & _
                'm1501 1日线' & @CRLF & _
                'c1501 1日线' & @CRLF & _
                '如需帮助,请按F1键' & @CRLF & _
                '帐户管理' & @CRLF & _
                'PanelFrame' & @CRLF & _
                'PanelFrame' & @CRLF & _
                'WorkspaceTab'

Local $sRE = StringRegExpReplace(StringRegExpReplace($str, '超\V+线\r\n|\r\n\V+[^线](?=\r)|\s+$', ''), '\r\n', ' | ')
MsgBox(0, $sRE, $Str)
发表于 2014-8-5 18:13:08 | 显示全部楼层
Local $Str = _
                '超级图表-RM1501 1小时线' & @CRLF & _
                'SR1501 5分钟线' & @CRLF & _
                'TA1409 1日线' & @CRLF & _
                'rb1501 15分钟线' & @CRLF & _
                'RM1501 1小时线' & @CRLF & _
                'm1501 1日线' & @CRLF & _
                'c1501 1日线' & @CRLF & _
                '如需帮助,请按F1键' & @CRLF & _
                '帐户管理' & @CRLF & _
                'PanelFrame' & @CRLF & _
                'PanelFrame' & @CRLF & _
                'WorkspaceTab'
Local $sRE = StringRegExp($str, '(?ms)^(?!超级图表).*线', 3)
If Not @error Then MsgBox(0, "", StringReplace($sRE[0],@crlf," | "))
这个也可以试下
发表于 2014-8-5 19:36:23 | 显示全部楼层
凑一下热闹:
#include <Array.au3>
Local $Str = _
                '超级图表-RM1501 1小时线' & @CRLF & _
                'SR1501 5分钟线' & @CRLF & _
                'TA1409 1日线' & @CRLF & _
                'rb1501 15分钟线' & @CRLF & _
                'RM1501 1小时线' & @CRLF & _
                'm1501 1日线' & @CRLF & _
                'c1501 1日线' & @CRLF & _
                '如需帮助,请按F1键' & @CRLF & _
                '帐户管理' & @CRLF & _
                'PanelFrame' & @CRLF & _
                'PanelFrame' & @CRLF & _
                'WorkspaceTab'
Local $sRE = StringRegExp($Str, '(?m)^(?!超级图表).*线', 3)
If Not @error Then MsgBox(0, "", _ArrayToString($sRE, " | "))
 楼主| 发表于 2014-8-5 22:19:38 | 显示全部楼层
分别测试了三位老师的代码,都能得到想要的结果。谢谢三位老师!这问题困我好长时间了。。
发表于 2014-8-6 08:52:29 | 显示全部楼层
都是高手哦
收藏一下备用
发表于 2018-10-10 21:44:10 | 显示全部楼层
(?m).*?-(.*线)|.*线
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-4-25 17:29 , Processed in 0.073893 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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