[問題] 將.txt檔 讀入後要怎麼篩選要的資料?

看板C_and_CPP作者 (~睿~)時間12年前 (2013/04/29 23:58), 編輯推噓5(5015)
留言20則, 9人參與, 最新討論串1/2 (看更多)
舉個例子來說... 我有一個 .txt 檔案 裡面的內容為 aabfghfghfhfhghfgjdj abafgjfgjfgjfgjfgjfe abbklhfhfhdfhhroryor aabqeprtpeteptpedmfd aabeererpedpfgpdfgpd abbrrrtrterterkhjkhj 我要讀取每一列的前三個字母 為 aab的 就把該列全部抓起來 所以輸出後 新的.txt 就是為 aabfghfghfhfhghfgjdj aabqeprtpeteptpedmfd aabeererpedpfgpdfgpd ======================================= 抓整行的是 用getline 那判斷字母有沒有什麼好方法 因為讀入後的資料 好像沒有辦法 像用char 一個一個用if來比較判斷 還請各位大大提示 幫忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.251.201.200

04/30 08:12, , 1F
re
04/30 08:12, 1F

04/30 08:12, , 2F
regular expression
04/30 08:12, 2F

04/30 08:48, , 3F
cat xxx.txt | egrep '^aab' > done.txt
04/30 08:48, 3F

04/30 09:18, , 4F
讀入後的資料還是可以找到特定位置字元的
04/30 09:18, 4F

04/30 09:21, , 5F
不過以這個需求來說 有很多更快的方式可以做這件事 如三樓
04/30 09:21, 5F

04/30 09:22, , 6F
grep -e "^aab" input.txt > 新的.txt
04/30 09:22, 6F

04/30 11:01, , 7F
字串 s 的 s[0], s[1]. s[2]不就是前三個字母了
04/30 11:01, 7F

04/30 11:02, , 8F
這不能用if比對 應該是我上半年聽到最神祕的事情
04/30 11:02, 8F

04/30 11:28, , 9F
這個自己寫程式做有點怪 推3F的方法
04/30 11:28, 9F

05/01 01:42, , 10F
推MOONRAKER, 前六樓指的是linux的terminal, 如果不是linux
05/01 01:42, 10F

05/01 02:18, , 11F
還是可以作到
05/01 02:18, 11F

05/02 15:11, , 12F
以前都是一堆人問怎麼自己寫程式兜出來,現在卻人人都推
05/02 15:11, 12F

05/02 15:12, , 13F
grep,也是挺神秘的。雖然我自己要寫也會用grep(更,前
05/02 15:12, 13F

05/02 15:12, , 14F
人core utils寫了那麼久,不用一下好意思嗎),但是這麼
05/02 15:12, 14F

05/02 15:14, , 15F
基本的事而且原po對字串有很大誤解,怎麼不自己寫一寫呢
05/02 15:14, 15F

05/02 15:24, , 16F
to MOONRAKER 我有在努力啊...但是好像還缺很多觀念
05/02 15:24, 16F

05/02 15:24, , 17F
可以再 提示一下嗎?
05/02 15:24, 17F

05/03 12:23, , 18F
最近也在寫這個 ww
05/03 12:23, 18F

05/04 00:59, , 19F
最簡單就是我講的啊,前三個字母你有了,這樣當然可以比
05/04 00:59, 19F

05/04 01:00, , 20F
長久之計就是就弄清楚cstring的substr()和strcmp()
05/04 01:00, 20F
文章代碼(AID): #1HVmb3yq (C_and_CPP)
文章代碼(AID): #1HVmb3yq (C_and_CPP)