找回密码
 加入
搜索
查看: 1867|回复: 9

[效率算法] [已解决]求个正则

  [复制链接]
发表于 2016-11-28 17:16:52 | 显示全部楼层 |阅读模式
本帖最后由 wua0550 于 2016-11-28 19:00 编辑
<REC><OR_N>161128102230</OR_N><TIME>2016-11-28 16:00:58</TIME><STA>1</STA><TYPE>2</TYPE><CO_I>200022</CO_I><PRI>53.58</PRI><QTY>10.00</QTY><BAL>10.00</BAL><WD_T></WD_T></REC><REC><OR_N>161128102150</OR_N><TIME>2016-11-28 16:00:22</TIME><STA>5</STA><TYPE>2</TYPE><CO_I>200022</CO_I><PRI>53.69</PRI><QTY>10.00</QTY><BAL>10.00</BAL><WD_T>2016-11-28 16:00:47</WD_T></REC><REC><OR_N>161128102146</OR_N><TIME>2016-11-28 16:00:20</TIME><STA>5</STA><TYPE>1</TYPE><CO_I>200016</CO_I><PRI>166.03</PRI><QTY>3.00</QTY><BAL>3.00</BAL><WD_T>2016-11-28 16:00:47</WD_T></REC><REC><OR_N>161128102173</OR_N><TIME>2016-11-28 16:00:34</TIME><STA>1</STA><TYPE>2</TYPE><CO_I>100010</CO_I><PRI>21.48</PRI><QTY>5.00</QTY><BAL>5.00</BAL><WD_T></WD_T></REC>        
原文本如上,我想取两个<REC></REC>之间<STA>1</STA> 为1的条目
理想的输出应该为
<OR_N>161128102230</OR_N><TIME>2016-11-28 16:00:58</TIME><STA>1</STA><TYPE>2</TYPE><CO_I>200022</CO_I><PRI>53.58</PRI><QTY>10.00</QTY><BAL>10.00</BAL><WD_T></WD_T></REC>
<REC><OR_N>161128102173</OR_N><TIME>2016-11-28 16:00:34</TIME><STA>1</STA><TYPE>2</TYPE><CO_I>100010</CO_I><PRI>21.48</PRI><QTY>5.00</QTY><BAL>5.00</BAL><WD_T></WD_T></REC>
<REC>.*?<STA>1</STA>.*?</REC> 我用这条正则式去取的时候会向后匹配到第二,第三个REC内的sta 1 的内容~~所以失败了~

我只想用一条正则解决,如果告诉我别的方法的~~先谢谢了~~不过我不想用!
发表于 2016-11-28 17:52:47 | 显示全部楼层
这个有关正则的平衡组匹配。AU3似乎不能平衡组匹配。
发表于 2016-11-28 18:07:05 | 显示全部楼层
<REC>(?:(?!</REC>).)*?<STA>1</STA>.*?</REC>
 楼主| 发表于 2016-11-28 19:03:59 | 显示全部楼层
回复 3# afan
a版 谢谢了~~我也想说用匹配排除来做~~但我用错了[^</REC>] 看了A版的答案恍然大悟~~非常感谢
发表于 2016-11-28 20:31:41 | 显示全部楼层
回复 3# afan


    a版,AU3的正则有平衡组吗?
发表于 2016-11-29 12:52:00 | 显示全部楼层
回复 5# haijie1223


    有~  少见而已
发表于 2016-11-29 13:55:17 | 显示全部楼层
回复 6# afan


    afan写个示例来看,非常期待
发表于 2016-11-29 19:23:43 | 显示全部楼层
回复 7# haijie1223


    这个没怎么用,忘得差不多了,论坛肯定是有例子的,搜搜~
发表于 2016-11-29 20:35:18 | 显示全部楼层
回复 8# afan


    好的,我爬下~
发表于 2016-12-4 09:22:19 | 显示全部楼层
afan 发表于 2016-11-28 18:07



    又跟A版学了一着
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-4-20 12:27 , Processed in 0.090598 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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