使用sed取字串並新增到新加行
在含有指定字串的行後新增一行,並取其中「」之內的字串供新添行使用
下例:取行內容為g_message("任意內容");的行,在每行的後面新增一行top_log(ksir,"任意內容");
$echo "g_message(\"this is a message test\");" | sed 's#g_message("\(.*\)");#&\ntop_log(ksir,"\1");#g'
g_message("this is a message test");
top_log(ksir,"this is a message test");
命令解釋:
"\(.*\)"表示兩引號之間的內容;
\1: 表示第一對括號裡面的內容(括號裡的表示式匹配的內容,可以用\1,\2等進行引用,第m個括號對內的內容,就用\m引用。)
擴充套件:
"asdfkjasldjkf"shiner"df
需求:需要提取出shiner子字串。
命令如下:
[root@localhost /]$ echo "asdfkjasldjkf\"shiner\"df" | sed 's/\(.*\)"\(.*\)"\(.*\)/\2/g'
shiner
命令解釋
s: 表示替換命令
\(.*\)" : 表示第乙個引號前的內容
"\(.*\)":表示兩引號之間的內容
)"\(.*\):表示引號後的內容
\2: 表示第二對括號裡面的內容
括號裡的表示式匹配的內容,可以用\1,\2等進行引用,第n個括號對內的內容,就用\n引用。
這個命令的意思是:
用\2代表的第二個括號的內容(shiner)去替換整個字串,這樣就得到了我們所需要的子字串了。
取自:
Sed替換刪除新增字串
替換當前目錄下所有文字檔案中,hello為world。i就地修改 sed i s hello world txt 替換包含hello的文字為hi,r遞迴,l列出檔案目錄 sed i s hello hi g grep hello rl 刪除包含insert的行 sed i insert d test...
使用函式擷取字串
首先說說使用php預設語法來操作這些 1.1 首先使用strpos找出指定字元的位置,3是要把指定字元包含進去,uft是3個字元乙個中文字,然後使用substr進行字串擷取。header content type text html charset utf 8 str badcat讀書網 這些都是我...
python中使用 提取字元 字串
字串的本質就是字串行,我們可以通過在字串後面新增,在裡面指定偏移量,可以提取改位置的單個字元 正向搜尋 最左側第乙個字元,偏移量為0,第二個偏移量為1,以此類推,知道len str 1為止 反向搜尋 最右側第乙個字元,偏移量為 1,倒數第二個偏移量為 2,以此類推,知道 len str 為止 a a...