05 13 15 22 25 31+13
05 14 15 22 26 30+13
05 12 15 22 27 31+13
05 14 15 22 28 31+13
08 11 15 22 29 31+13
05 14 15 23 24 31+13
05 10 15 23 25 30+13
05 14 15 23 26 31+13
05 14 15 23 27 31+13
05 11 15 23 28 31+13
05 14 15 21 29 30+13
以上是資料串,從紅色開始至紅色結束,中間有空格、數字、+號以及換行符
我的正則:05\s\d\d\s\d\d\s\d\d\s\d\d\s\d\d\+\d\d([\w\W]*?)[^(05)]
思想:從05開始匹配,直到匹配到不是05的的串結尾
邏輯結果:
1:
05 13 15 22 25 31+13
05 14 15 22 26 30+13
05 12 15 22 27 31+13
05 14 15 22 28 31+13
2:
05 14 15 23 24 31+13
05 10 15 23 25 30+13
05 14 15 23 26 31+13
05 14 15 23 27 31+13
05 11 15 23 28 31+13
05 14 15 21 29 30+13
可是結果不對,要么匹配的是全部,把([\w\W]*?)改為([\w\W]*)后,又匹配的是全部
還請大神們指點,在線等,給高分!
uj5u.com熱心網友回復:
沒看懂你要什么結果如果是只想留下 08 開頭的那一行
可以這樣 (05).+[^05]
uj5u.com熱心網友回復:
如果是想抹去08開頭那行(08).+[^05]
俺覺得你不用把這些轉為字串再用正則搞,直接在byte陣列中處理不就好了么
uj5u.com熱心網友回復:
自己已經解決了,結貼咯uj5u.com熱心網友回復:
按你的描述, 匹配前兩位就可以了, 沒必要做那么多匹配檢查轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/117407.html
標籤:語言基礎/算法/系統設計
上一篇:有沒有好的excel報表控制元件
下一篇:請教
