簡體   English   中英

Grep以特定順序輸入字符串

[英]Grep for a string in a specific order

我需要為指定順序的單詞(實際上是一個字符串)grep一個大文件。 我還需要該字符串才能包含冒號“:”。 例如,如果單詞是“ apple”,“ banana”和“:peach”,我會得到這樣一行:“ apple cherries banana cool:peach”,而不是“ apple:peach cherries banana cool”。 我真的很希望能夠有一個字符串,而在其他grep命令中沒有grep命令。 我不只搜索整個單詞。

grep "apple.*banana.*:peach" file

例如

$ echo "apple cherries banana cool :peach" | grep "apple.*banana.*:peach"
apple cherries banana cool :peach
$ echo "apple :peach cherries banana cool" |grep "apple.*banana.*:peach"
$

非常簡單的正則表達式。 “蘋果”,“香蕉”和“:桃子”部分只是文字字符串。 它們之間的.*是兩個正則表達式運算符- . 將匹配任何字符,並且*表示上一個匹配項可以匹配0次或更多次。

本質上,我們說的是按以下順序找到這些文字字符串,它們之間有任意數量的字符(包括一個字符,因此即使“ applebanana:peach”也將匹配。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM