簡體   English   中英

使用grep查找以$開頭的模式

[英]Using grep to find a pattern beginning in a $

我需要找到一個以$開頭的模式,后跟兩個數字,一個不是數字的單個字符以及其他任何內容。

我知道如何找到一個以美元符號開頭,后跟兩個數字的模式,但是我不知道如何檢查一個不是數字的字符。

我還需要計算多少行具有此模式。

到目前為止,我有:

grep -Ec '\$[0-9][0-9].....

我不知道該怎么辦。 有人可以幫忙嗎? 任何幫助將非常感激。

插入符號反轉選擇組,因此,如果[0-9]為“匹配任何數字”,則[^0-9]為“匹配任何非數字”。

您可以嘗試使用此正則表達式\\$[0-9][0-9][^0-9].*

\\$[0-9][0-9][^0-9].*

  • \\ $從字面上匹配字符$
  • [0-9]匹配以下列表中存在的單個字符。 0-9介於0到9之間的單個字符
  • [0-9]匹配以下列表中存在的單個字符。 0-9介於0到9之間的單個字符
  • [^ 0-9]匹配以下列表中不存在的單個字符。 0-9介於0到9之間的單個字符
  • 。*匹配任何字符(換行符除外)量詞:*在0到無限次之間,盡可能多地重復,並根據需要返回[貪婪]

我會第二個@realspirituituals回答,如果您需要計算多少行具有此模式,可以通過管道傳輸到wc -l來計算grep輸出的行數。 為了既顯示線又一次統計它們,請像這樣通過管道輸出

grep "\$[0-9]{2}[^0-9].*" | tee >(wl -l)

tee將在wlSTDOUT之間分配STDOUT {2}將導致前一個[0-9]匹配兩次。

暫無
暫無

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

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