Re: [討論] 過濾資料(多重條件)

看板Python作者 (醉落~最弱)時間14年前 (2011/07/05 21:32), 編輯推噓2(2023)
留言25則, 4人參與, 最新討論串3/11 (看更多)
感謝!! 但請問一下 要如何加入 若是讀取到EFG 也要存入content 且 ABC EFG 兩列data 順序是跟raw data一樣? : 我自己會這樣做, 因為findall真的太慢了 : import commands : content = commands.getoutput('grep ABC data') : .. : .. : .. : 之後再對content做處理 : 也許這樣的方法有點笨, 但是應該會比findall來的快多了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.169.168.17

07/05 21:35, , 1F
你是找到EFG就把EFG那一列存起來?
07/05 21:35, 1F

07/05 21:39, , 2F
coomands.getoutput("grep '[ABC|EFG]' data")
07/05 21:39, 2F

07/05 21:39, , 3F
commands
07/05 21:39, 3F

07/05 21:40, , 4F
囧" 這樣好像會失敗...
07/05 21:40, 4F

07/05 21:40, , 5F
只有有單獨的A,B,C,E,F,G都會search到...
07/05 21:40, 5F

07/05 21:40, , 6F
sorry
07/05 21:40, 6F

07/05 21:41, , 7F
對 我希望可以這樣 找到ABC 存ABC 找到EFG就存EFG
07/05 21:41, 7F

07/05 21:42, , 8F
保留raw data順序 過濾掉其他我不想看的資訊
07/05 21:42, 8F

07/05 21:44, , 9F
給grer regex: ('grep -e "ABC\|EFG" data')
07/05 21:44, 9F

07/05 21:44, , 10F
grep
07/05 21:44, 10F

07/05 21:44, , 11F
commands.getoutput("grep 'ABC\|EFG' data")
07/05 21:44, 11F

07/05 21:45, , 12F
啊哈kd大先推了~ 大概就是多重匹配的方法
07/05 21:45, 12F

07/05 21:46, , 13F
應該這樣就可以處理了
07/05 21:46, 13F

07/05 21:58, , 14F
我剛測試一下,grep -o 'ABC\EFG' data比較符合原po
07/05 21:58, 14F

07/05 22:00, , 15F
@樓上, 我用你的grep不到任何東西耶
07/05 22:00, 15F

07/05 22:00, , 16F
你應該少了|
07/05 22:00, 16F

07/05 22:03, , 17F
我不知道為啥|不見了QQ,可能手殘刪了XD
07/05 22:03, 17F

07/05 22:06, , 18F
嗯 感謝大家!! 我成功了!!!!
07/05 22:06, 18F

07/05 22:18, , 19F
可以請問一下 \的用意是甚麼?
07/05 22:18, 19F

07/05 22:26, , 20F
告訴grep接下來一個字元有特殊意義
07/05 22:26, 20F

07/05 22:33, , 21F
\在正規表示中代表跳出的意思, 緊接在\之後的字元通常都是
07/05 22:33, 21F

07/05 22:33, , 22F
特殊字元, 或者在正規表示中已經被拿來表示某些意義
07/05 22:33, 22F

07/05 22:35, , 23F
例如*表示零個或多個, 可以利用\*跳出*本身的用途
07/05 22:35, 23F

07/05 22:37, , 24F
ex:要找'*'字元grep '*' data是無法的, 需要grep '\*' data
07/05 22:37, 24F

07/05 22:40, , 25F
嗯 瞭解 謝謝各位的詳細解答
07/05 22:40, 25F
文章代碼(AID): #1E4n9lMH (Python)
討論串 (同標題文章)
文章代碼(AID): #1E4n9lMH (Python)