大家好,你們能幫我打印出RS中正則表達式的結果嗎?在RS中打印輸出正則表達式的結果
awk 'BEGIN {RS="--[0-9a-zA-Z]+--"} /pattern/' awk-test.txt
圖案= 「 - [0-9A-ZA-Z] + - 」 可以等於RS之間的文本--95700e1b--或--0dcaf754--要不然 AWK打印出塊,我怎樣才能打印找到的RS呢?
PS抱歉我的英文不好。
大家好,你們能幫我打印出RS中正則表達式的結果嗎?在RS中打印輸出正則表達式的結果
awk 'BEGIN {RS="--[0-9a-zA-Z]+--"} /pattern/' awk-test.txt
圖案= 「 - [0-9A-ZA-Z] + - 」 可以等於RS之間的文本--95700e1b--或--0dcaf754--要不然 AWK打印出塊,我怎樣才能打印找到的RS呢?
PS抱歉我的英文不好。
由於RS
只能是便攜式awk
腳本中的單個字符,因此我假設您使用的是gawk
。在這種情況下,您可以參考RT
,其中將包含與RS
中指定的正則表達式匹配的文本。 (RT
是記錄終止符,因此它是當前記錄末尾匹配RS
而不是開頭的文本值)
謝謝解決!) gawk'BEGIN {RS =「 - [0-9a-zA-Z] + - 」}/pattern/{print $ 0;打印RT}'awk-test.txt – user2108144 2013-02-26 10:02:19
使用[[:alnum:]]代替[[0-9a- zA-Z]]爲便攜性,特別是在非英語爲母語的國家。 – 2013-02-25 23:49:50