我試圖從模式開始獲取子串。如何獲得子串,從bash中的模式的第一次出現開始
我會簡單地使用cut
,但是,如果模式是長几個字符,將無法正常工作。
如果我需要一個單字符,分隔符,那麼這將這樣的伎倆:
result=`echo "test String with (element in parenthesis) end" | cut -d "(" -f 2-`
編輯:抽樣檢驗:
INPUT: ("This test String is an input", "in")
OUTPUT: "ing is an input"
INPUT: ("This test string is an input", "in ")
OUTPUT: ""
INPUT: ("This test string is an input", "n")
OUTPUT: "ng is an input"
注:括號意味着輸入都需要一個字符串和一個分隔符字符串。
您希望的輸出是什麼?我不清楚確切的問題。 – matchew
期望的輸出是原始字符串的一個子部分,從與該模式的第一次完全匹配開始,到原始字符串的末尾結束。 – iliaden
仍然不清楚 - 您可以提供兩個文本,其中一個帶有SAMPLE-INPUT,一個帶有SAMPLE-OUTPUT?給我們一個不起作用的例子只是指向一個大方向。 – nhed