touch_xu 发表于 2011-4-18 09:15:49

【已解决】再求一正则

本帖最后由 touch_xu 于 2011-4-19 10:20 编辑

---------- ------ ------------------
NVM 01234         E8BC0D8140    Pass
---------------------------------------------------------------
      R/G :   0.7591907380.774329364    Pass
      B/G :   0.7390767340.744274378    Pass

本人学习正则中,但是还是搞不定
和上一个类似,但是中间有不可变字符 0.7591907380.739076734是会变的,红色是不变的
蓝色是想结的结果 但是NVM与R/G B/G相对位置还是不固定的 谢谢

大绯狼 发表于 2011-4-18 09:24:14

本帖最后由 大绯狼 于 2011-4-18 09:29 编辑

NVM\s01234\s+(\w+)\s+Pass
\/G\s:\s+\d+(?:\.\d+)?\s+(\d+(?:\.\d+)?)\s+Pass

组1为结果

love5173 发表于 2011-4-18 09:27:22

nvm后面也没蓝色,为什么还加红了,判断的时候根本不用考虑他
另外这个好像跟上个帖子的差不多啊,你稍微修改一下不就完了

love5173 发表于 2011-4-18 09:35:05

回复 2# 大绯狼
老兄,他这个跟以前发的帖子有关,pass不是必出的,另外即便你这样给他提取完了,你没发现没有标识么,只要不是要计算的数据,最好在数组或字符串里标识出来,要不根本没办法判断什么是什么的数据,你这个最大的技巧【RB】最可恨,彻底让人不知道,你产生的到底是谁的匹配结果了

大绯狼 发表于 2011-4-18 09:37:34

回复大绯狼
老兄,他这个跟以前发的帖子有关,pass不是必出的,另外即便你这样给他提取完了,你没发现没 ...
love5173 发表于 2011-4-18 09:35 http://www.autoitx.com/images/common/back.gif


    我只管给出提出问题的答案。其他的事情我就管不了了。。。。

touch_xu 发表于 2011-4-18 09:53:51

回复大绯狼
老兄,他这个跟以前发的帖子有关,pass不是必出的,另外即便你这样给他提取完了,你没发现没 ...
love5173 发表于 2011-4-18 09:35 http://www.autoitx.com/images/common/back.gif

对PASS不是必出的,有可能是FAIL

touch_xu 发表于 2011-4-18 09:55:34

回复 3# love5173


    NVM后面有要的结果,我已经标记蓝色,我就是试着改,怎么改都改不出结果,谢谢

大绯狼 发表于 2011-4-18 09:56:23

回复 7# touch_xu


    那把Pass删掉一样

touch_xu 发表于 2011-4-18 10:00:35

回复touch_xu


    那把Pass删掉一样
大绯狼 发表于 2011-4-18 09:56 http://www.autoitx.com/images/common/back.gif


    我试了可以的,谢谢。

easefull 发表于 2011-4-18 10:05:01

做题.
#include <Array.au3>
Local $sText =        _
                                '---------- ------ ------------------' & @CRLF & _
                                'NVM 01234         E8BC0D8140    Pass ' & @CRLF & _
                                '---------------------------------------------------------------' & @CRLF & _
                                '      R/G :   0.7591907380.774329364    Pass ' & @CRLF & _
                                '      B/G :   0.7390767340.744274378    Pass '
Local $asResult = StringRegExp($sText, '(?s)NVM 01234\s+(\S+).+R/G\s*:\s+.*?\s+(\S+).+B/G\s*:\s+\s+.*?\s+(\S+)', 3)
_ArrayDisplay($asResult)
Exit

lixiaolong 发表于 2011-11-27 02:41:36

本帖最后由 lixiaolong 于 2011-11-27 02:42 编辑

练习练习.
(?:NVM|+/G\s*:)\s*\S+\s*(\S+)
页: [1]
查看完整版本: 【已解决】再求一正则