2016-08-25 25 views
-1

我處理,看起來如下文字:如何建立一個正則表達式來獲得一些行?

FAPK FAPK891 FACEBOOK  *BIPARY R  P 
FAPK FAPK891 FACEBOOK  *BIPARY S  P 
. 
. 
. 
FAOO FAOO891 FACEBOOK  *BIPARY R  P 
FAOO FAOO891 FACEBOOK  *BIPARY S  P 

事實是,我想只獲得具有以下模式行:

*BIPARY R 

的事情是,那模式可以在每行一些地方線,這是不固定的,我試着用:

grep "BIPARY" 

,但它給了我所有的線,我也試着用:

grep -e '.*\*BIPARY R.*$' text 

,但它並沒有給什麼, 我想感謝任何建議,以克服這種情況,我有與「*」符號與空間的問題,因爲這種模式可能出現在一些我想要的地方,我相信最好的方法是建立一個正則表達式,感謝任何如何。

我的期望的輸出將只是與該特定圖案我指的是行:

FAOO FAOO891 FACEBOOK  *BIPARY R  P 
+0

你的第二個命令適用於我。你的意思是什麼「不給沒有」?你沒有得到任何比賽? –

+0

'grep -w'BIPARY R'text' - 爲什麼你需要正則表達式? –

+0

感謝您的支持,「w」的意思是什麼,我知道這看起來很奇怪,但是當我從終端複製粘貼到我的電腦一小段文字時,它可以工作,但是當我嘗試使用在原始終端完整的文本它不起作用,因爲我正在處理包含私人信息的數據我無法顯示文本,我只是肯定我需要一個正則表達式。 – neo33

回答

1
grep ".*\*BIPARY\sR.*" text 

Wherever there are special character and if that is expected to be in the text escape those with backslash. 

空間表示爲\ S

+0

謝謝感謝支持,我正在尋找正則表達式,因爲我需要繼續確保結果。 – neo33

1

這聽起來像圖案是固定字符串「 * BIPARY R「 - 用grep -F你會得到更快的性能 - 也是領先和尾隨的。*不要在grep正則表達式中爲你買東西

grep -F '*BIPARY R'