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

  免費注冊 查看新帖 |

Chinaunix

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

[文本處理] 定位字符串 截取匹配格式之間行 [復制鏈接]

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2020-08-18 20:19:4815-16賽季CBA聯(lián)賽之青島
日期:2022-01-19 11:51:49
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2023-08-22 17:57 |只看該作者 |倒序瀏覽
本帖最后由 unix520 于 2023-08-23 15:59 編輯
  1. 請以文本中倒數(shù)第一個含有 " 新增" 的字符串的行, 匹配該行其中一個字符串格式 /([0-9A-Z]{1,2}:){4}[0-9A-Z]{1,2}/ , 截取文本中所有該相同名稱字符串至 "結束" 之間行,    "新增" 至  "結束" 可能中間會有很多行  , 或不是相鄰
復制代碼
  1. awk '/([0-9A-Z]{1,2}:){4}[0-9A-Z]{1,2}/,/結束/' 1.txt    這個會全部輸出
復制代碼
  1. a 新增  01:02:03:04:05:06 (
  2. b 結束

  3. c 新增  A1:A2:A3:A4:A5:A6 (
  4. d 結束


  5. e 新增  U 01:02:03:04:05:06 (
  6. f 結束

  7. g 新增  01:02:03:04:05:06 (
  8. f 結束

  9. v 01:02:03:04:05:06
復制代碼


截取到所有名稱至"結束" 之間行
應該要得到
2.txt
  1. a 新增  01:02:03:04:05:06 (
  2. b 結束


  3. e 新增  U 01:02:03:04:05:06 (
  4. f 結束

  5. g 新增  01:02:03:04:05:06 (
  6. f 結束
復制代碼


Thanks


論壇徽章:
1
19周年集字徽章-年
日期:2020-10-29 09:39:21
2 [報告]
發(fā)表于 2023-08-23 10:06 |只看該作者
Sorry,根本看不懂需求。

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2020-08-18 20:19:4815-16賽季CBA聯(lián)賽之青島
日期:2022-01-19 11:51:49
3 [報告]
發(fā)表于 2023-08-23 11:28 |只看該作者
本帖最后由 unix520 于 2023-08-23 12:46 編輯

回復 2# legs




如果倒數(shù)中發(fā)現(xiàn)第一個有 "新增" 字符串的行,   該行其中有一個字符串名稱是一種格式, 但在該行位置不固定   需找出所有該名稱至結束之間行
匹配該格式名稱
  1. /([0-9A-Z]{1,2}:){2}[0-9A-Z]{1,2}/
復制代碼

e 新增  00:01:02 (





論壇徽章:
1
19周年集字徽章-年
日期:2020-10-29 09:39:21
4 [報告]
發(fā)表于 2023-08-23 13:38 |只看該作者
本帖最后由 legs 于 2023-08-23 13:40 編輯
unix520 發(fā)表于 2023-08-23 11:28
回復 2# legs如果倒數(shù)中發(fā)現(xiàn)第一個有 "新增" 字符串的行,   該行其中有一個字符串名稱是一種格式, 但在該行 ...

更看不懂了,你這描述得關鍵信息非常含糊,都沒有看明白為啥有兩行被排除了。懂的人解答吧,我是真看不明白。
你這兩行字,一共用逗號分成了四個半句,每一個半句都沒有看懂。

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2020-08-18 20:19:4815-16賽季CBA聯(lián)賽之青島
日期:2022-01-19 11:51:49
5 [報告]
發(fā)表于 2023-08-23 14:15 |只看該作者
本帖最后由 unix520 于 2023-08-23 14:16 編輯

回復 4# legs

v 31:00:01
倒數(shù)第一行 雖然格式能匹配, 但沒有" 新增"字段


c 新增  10:11:12 (
雖然有" 新增"字段,    但是要匹配字符串名稱不相同


論壇徽章:
1
19周年集字徽章-年
日期:2020-10-29 09:39:21
6 [報告]
發(fā)表于 2023-08-23 14:45 |只看該作者
unix520 發(fā)表于 2023-08-23 14:15
回復 4# legs v 31:00:01倒數(shù)第一行 雖然格式能匹配, 但沒有" 新增"字段c 新增  10:11:12 (雖然有" 新增"字 ...

看不懂,看不出來c,d兩行跟a,b兩行有什么區(qū)別,格式什么的一模一樣,除了時間不一樣,你要匹配精確時間,你直接寫字面量就得了,干嘛要寫正則?

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2020-08-18 20:19:4815-16賽季CBA聯(lián)賽之青島
日期:2022-01-19 11:51:49
7 [報告]
發(fā)表于 2023-08-23 15:58 |只看該作者
本帖最后由 unix520 于 2023-08-23 16:04 編輯

回復 6# legs

    不是時間   這是ㄧ串ID格式   由于太長原因 我減少了幾個 01:02:03:04:05:06
至于其他不用理會      在頂樓已更正

至于加上a b c d 隔開, 是防止匹配了開頭字段  "^新增"  "^結束"

論壇徽章:
1
19周年集字徽章-年
日期:2020-10-29 09:39:21
8 [報告]
發(fā)表于 2023-08-23 16:09 |只看該作者
本帖最后由 legs 于 2023-08-23 16:19 編輯

是不是這個意思:根據(jù)全文最后一處有“新增”和這行的時間值,根據(jù)這個時間值的內(nèi)容查找文本中所有“新增“至”結尾“的段?
perl -0nE'($s)=/\X+\N*?新增\N*(\d\d:\d\d:\d\d)/;say$&while/\N*?新增\N*?$s\X*?結束\N*/g' file

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2020-08-18 20:19:4815-16賽季CBA聯(lián)賽之青島
日期:2022-01-19 11:51:49
9 [報告]
發(fā)表于 2023-08-23 16:28 |只看該作者
本帖最后由 unix520 于 2023-08-23 16:34 編輯

回復 8# legs

對,,差不多這意思,   不是時間   這是ㄧ串ID格式, (\d\d:\d\d:\d\d) 如有大寫字母咋辦,  200MB文件 效率也很重要,,越快越好


論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2020-08-18 20:19:4815-16賽季CBA聯(lián)賽之青島
日期:2022-01-19 11:51:49
10 [報告]
發(fā)表于 2023-08-23 19:22 |只看該作者
本帖最后由 unix520 于 2023-08-24 15:44 編輯

回復 8# legs


A1:A2:A3:A4:A5:A6
1A:2A:3A:4A:5A:6A
謝謝大俠,  改了正則匹配是可以的  "[0-9A-Z]+:"      不過好慢啊

您需要登錄后才可以回帖 登錄 | 注冊

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP