亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 1758 | 回復(fù): 11
打印 上一主題 下一主題

[文本處理] 區(qū)間連續(xù)的行合并問題 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2016-09-07 17:50 |只看該作者 |倒序?yàn)g覽
本帖最后由 bxfqing 于 2016-09-07 18:00 編輯

原始待處理文本如下

  1. ===== 說明 =====
  2. ^ Option
  3. ^ Value
  4. ^ Default
  5. ^ Comment
  6. |-
  7. |TARGET_BUILD_TYPE
  8. |release、debug
  9. |release
  10. |默認(rèn)rel
  11. |-
  12. |TARGET_BUILD_VARIANT
  13. |user、eng、userdebug
  14. |eng
  15. |版本類型
  16. |-

  17. ===== 其他 =====
  18. ^ Option
  19. ^ Value
  20. ^ Default
  21. ^ Comment
  22. |-
  23. |x1
  24. |x2
  25. |x3
  26. |x4
  27. |-
  28. |z1
  29. |z2
  30. |z3
  31. |z4
  32. |-
復(fù)制代碼


期望的目標(biāo)是轉(zhuǎn)化成如下格式

連續(xù)的^被合并成一行
連續(xù)的|被合并成一行
  1. ^ Option ^ Valueb ^ Default ^ Comment ^
  2. |TARGET_BUILD_TYPE |release、debug |release |一般為release |
復(fù)制代碼


我的思路

1. 首先處理標(biāo)題,合并連續(xù)的行,把
^ Option
^ Value
^ Default
^ Comment
合并成,每個(gè)^前添加空格
^ Option ^ Valueb ^ Default ^ Comment
然后再在行尾添加^(這個(gè)知道怎么做)
^ Option ^ Valueb ^ Default ^ Comment ^

2. 然后處理內(nèi)容
已|-作為分割,處理連續(xù)的行,把
|TARGET_BUILD_TYPE
|release、debug
|release
|默認(rèn)rel
合并成,每個(gè)|添加空格
|TARGET_BUILD_TYPE |release、debug |release |一般為release |
最后在行尾追加|
最后去掉|-分隔符

當(dāng)前現(xiàn)狀:
目前還沒有試出來如何合并連續(xù)的行和按照分隔符來合并連續(xù)行,求指教

論壇徽章:
28
15-16賽季CBA聯(lián)賽之八一
日期:2016-02-22 19:10:4215-16賽季CBA聯(lián)賽之深圳
日期:2016-12-01 10:34:0415-16賽季CBA聯(lián)賽之新疆
日期:2016-12-07 10:24:2915-16賽季CBA聯(lián)賽之同曦
日期:2016-12-15 12:06:43CU十四周年紀(jì)念徽章
日期:2016-12-18 13:03:4415-16賽季CBA聯(lián)賽之吉林
日期:2017-01-03 15:52:2515-16賽季CBA聯(lián)賽之遼寧
日期:2017-01-04 14:58:2415-16賽季CBA聯(lián)賽之遼寧
日期:2017-01-15 09:42:512016科比退役紀(jì)念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16賽季CBA聯(lián)賽之上海
日期:2017-03-18 10:14:5415-16賽季CBA聯(lián)賽之青島
日期:2017-03-18 22:00:44
2 [報(bào)告]
發(fā)表于 2016-09-07 18:39 |只看該作者
本帖最后由 moperyblue 于 2016-09-07 22:05 編輯

樓主 希望的結(jié)果是?
行數(shù)及關(guān)鍵字固定嗎?

[code][/code]

論壇徽章:
145
技術(shù)圖書徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11獅子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龍
日期:2014-01-08 15:26:12技術(shù)圖書徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
3 [報(bào)告]
發(fā)表于 2016-09-07 18:48 |只看該作者
回復(fù) 1# bxfqing

$ awk '/^[\^]/{h=h"^ "$2" "}/^\|-/{if(h)print h"^";if(m)print m"|";h=m="";next}/^[|]/{m=m$1" "}' FILE
^ Option ^ Value ^ Default ^ Comment ^
|TARGET_BUILD_TYPE |release、debug |release |默認(rèn)rel |
|TARGET_BUILD_VARIANT |user、eng、userdebug |eng |版本類型 |
^ Option ^ Value ^ Default ^ Comment ^
|x1 |x2 |x3 |x4 |
|z1 |z2 |z3 |z4 |

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2016-09-07 21:03 |只看該作者
回復(fù) 2# moperyblue

行數(shù)和關(guān)鍵字都不固定,僅僅是格式一致
^A
^B
^C
^D
|-
|F1
|F2
|F3
|-
^X
^Y
^Z
^A
|-
|X1
|X2
|X3
|-

|-
|X4
|X5
|X6
|-




論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2016-09-07 21:14 |只看該作者
jason680 發(fā)表于 2016-09-07 18:48
回復(fù) 1# bxfqing

$ awk '/^[\^]/{h=h"^ "$2" "}/^\|-/{if(h)print h"^";if(m)print m"|";h=m="";next}/ ...

強(qiáng),我要好好消化一下,
有辦法保留不匹配的行嗎?

比如#1的原生文本,轉(zhuǎn)化出來,還保留著其他內(nèi)容



===== 說明 =====
^ Option ^ Value ^ Default ^ Comment ^
|TARGET_BUILD_TYPE |release、debug |release |默認(rèn)rel |
|TARGET_BUILD_VARIANT |user、eng、userdebug |eng |版本類型 |

===== 其他 =====

^ Option ^ Value ^ Default ^ Comment ^
|x1 |x2 |x3 |x4 |
|z1 |z2 |z3 |z4 |



目前想到的就只能后續(xù)拼接兩個(gè)文件

論壇徽章:
145
技術(shù)圖書徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11獅子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龍
日期:2014-01-08 15:26:12技術(shù)圖書徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
6 [報(bào)告]
發(fā)表于 2016-09-07 22:04 |只看該作者
本帖最后由 jason680 于 2016-09-07 22:09 編輯

回復(fù) 5# bxfqing

$ awk '/^\^/{h=h"^ "$2" ";next}/^\|-/{if(h)print h"^";if(m)print m"|";h=m="";next}/^[|]/{m=m$1" ";next}1' FILE
===== 說明 =====
^ Option ^ Value ^ Default ^ Comment ^
|TARGET_BUILD_TYPE |release、debug |release |默認(rèn)rel |
|TARGET_BUILD_VARIANT |user、eng、userdebug |eng |版本類型 |

===== 其他 =====
^ Option ^ Value ^ Default ^ Comment ^
|x1 |x2 |x3 |x4 |
|z1 |z2 |z3 |z4 |



awk初學(xué)之常見問題
http://www.72891.cn/thread-2309494-1-1.html



論壇徽章:
28
15-16賽季CBA聯(lián)賽之八一
日期:2016-02-22 19:10:4215-16賽季CBA聯(lián)賽之深圳
日期:2016-12-01 10:34:0415-16賽季CBA聯(lián)賽之新疆
日期:2016-12-07 10:24:2915-16賽季CBA聯(lián)賽之同曦
日期:2016-12-15 12:06:43CU十四周年紀(jì)念徽章
日期:2016-12-18 13:03:4415-16賽季CBA聯(lián)賽之吉林
日期:2017-01-03 15:52:2515-16賽季CBA聯(lián)賽之遼寧
日期:2017-01-04 14:58:2415-16賽季CBA聯(lián)賽之遼寧
日期:2017-01-15 09:42:512016科比退役紀(jì)念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16賽季CBA聯(lián)賽之上海
日期:2017-03-18 10:14:5415-16賽季CBA聯(lián)賽之青島
日期:2017-03-18 22:00:44
7 [報(bào)告]
發(fā)表于 2016-09-07 22:04 |只看該作者
本帖最后由 moperyblue 于 2016-09-08 11:59 編輯

回復(fù) 4# bxfqing


  1. sed '/\^/{:a;N;/\n|-/!{s/\n/ /;ta};s/\n/ ^&/;tc};/|-/{:b;N;/\n$/{s/.*//;t};/\n|-/!{s/\n/ /;tb};s/|- //;s/\n/ |&/};:c;P;D' file
復(fù)制代碼

===== 說明 =====
^ Option ^ Value ^ Default ^ Comment ^
|TARGET_BUILD_TYPE |release、debug |release |默認(rèn)rel |
|TARGET_BUILD_VARIANT |user、eng、userdebug |eng |版本類型 |

===== 其他 =====
^ Option ^ Value ^ Default ^ Comment ^
|x1 |x2 |x3 |x4 |
|z1 |z2 |z3 |z4 |

論壇徽章:
36
摩羯座
日期:2013-09-23 16:37:312015年亞洲杯之沙特阿拉伯
日期:2015-04-14 09:10:172015亞冠之柏太陽神
日期:2015-06-25 08:48:212015亞冠之武里南聯(lián)
日期:2015-07-28 09:01:082015亞冠之萊赫維亞
日期:2015-07-28 15:44:172015亞冠之柏斯波利斯
日期:2015-09-06 14:08:52白銀圣斗士
日期:2015-11-25 17:06:2815-16賽季CBA聯(lián)賽之吉林
日期:2015-12-09 16:59:072016猴年福章徽章
日期:2016-02-18 15:30:3415-16賽季CBA聯(lián)賽之遼寧
日期:2016-04-14 09:29:04luobin
日期:2016-06-17 17:46:3615-16賽季CBA聯(lián)賽之天津
日期:2016-08-16 14:11:01
8 [報(bào)告]
發(fā)表于 2016-09-08 11:02 |只看該作者
  1. sed ':a;N;/|-/!s/\n/ /;ta;s/\(\^\||\)\([^\^|]*\)\n.*$/\1\2\1/;s/|-//'
復(fù)制代碼

論壇徽章:
2
射手座
日期:2014-10-10 15:59:4715-16賽季CBA聯(lián)賽之上海
日期:2016-03-03 10:27:14
9 [報(bào)告]
發(fā)表于 2016-09-08 12:11 |只看該作者
本帖最后由 yinyuemi 于 2016-09-08 12:21 編輯

回復(fù) 1# bxfqing

  1. sed -r '/[\^|]/{:a;$!N;s/\n?\|\-//;/^([\^|]).+\n\1/!{P;D};s/\n//;ta};' file
復(fù)制代碼
===== 說明 =====
^ Option^ Value^ Default^ Comment
|TARGET_BUILD_TYPE|release、debug|release|默認(rèn)rel
|TARGET_BUILD_VARIANT|user、eng、userdebug|eng|版本類型

===== 其他 =====
^ Option^ Value^ Default^ Comment
|x1|x2|x3|x4
|z1|z2|z3|z4

論壇徽章:
28
15-16賽季CBA聯(lián)賽之八一
日期:2016-02-22 19:10:4215-16賽季CBA聯(lián)賽之深圳
日期:2016-12-01 10:34:0415-16賽季CBA聯(lián)賽之新疆
日期:2016-12-07 10:24:2915-16賽季CBA聯(lián)賽之同曦
日期:2016-12-15 12:06:43CU十四周年紀(jì)念徽章
日期:2016-12-18 13:03:4415-16賽季CBA聯(lián)賽之吉林
日期:2017-01-03 15:52:2515-16賽季CBA聯(lián)賽之遼寧
日期:2017-01-04 14:58:2415-16賽季CBA聯(lián)賽之遼寧
日期:2017-01-15 09:42:512016科比退役紀(jì)念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16賽季CBA聯(lián)賽之上海
日期:2017-03-18 10:14:5415-16賽季CBA聯(lián)賽之青島
日期:2017-03-18 22:00:44
10 [報(bào)告]
發(fā)表于 2016-09-08 12:12 |只看該作者

  1. sed '/\^/{:a;N;/|-/!{s/\n/ /;ta};s/\n.*/ ^/};/|/{:b;N;/|-/!{s/\n/ /;tb};s/\n.*/ |/}' file
復(fù)制代碼

===== 說明 =====
^ Option ^ Value ^ Default ^ Comment ^
|TARGET_BUILD_TYPE |release、debug |release |默認(rèn)rel |
|TARGET_BUILD_VARIANT |user、eng、userdebug |eng |版本類型 |

===== 其他 =====
^ Option ^ Value ^ Default ^ Comment ^
|x1 |x2 |x3 |x4 |
|z1 |z2 |z3 |z4 |
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP