欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Shell實(shí)用技巧:快速去除字符串中的空格

 更新時(shí)間:2014年11月28日 17:06:18   投稿:junjie  
這篇文章主要介紹了Shell實(shí)用技巧:快速去除字符串中的空格,本文給出了3種方法,分別講解了刪除行首空格、刪除行末空格、刪除所有空格等內(nèi)容,需要的朋友可以參考下

在整理詞庫的過程中遇到 一個(gè)問題,有些其實(shí)是同一個(gè)關(guān)鍵詞之關(guān)有空格的話,無法正常被去重,那么有沒有辦法能快快速去除這些字符中間的空格呢?經(jīng)過百度一番,找到一個(gè)解決辦法,記錄一下。

效果如下圖所示,圖上半部分是示例文本,下半部分就是用shell去掉空格后的效果。其中用到就是下面第3個(gè)方法。

在UNIX上使用sed命令進(jìn)行字符串處理中常常遇到的問題就是行首行尾的空格怎么刪除。

下面介紹sed是怎樣實(shí)現(xiàn)的,當(dāng)然awk同樣可以。

1、刪除行首空格

復(fù)制代碼 代碼如下:

sed ‘s/^[ \t]*//g'

說明:

第一個(gè)/的左邊是s表示替換,即將空格替換為空。
第一個(gè)/的右邊是表示后面的以xx開頭。
中括號表示“或”,空格或tab中的任意一種。這是正則表達(dá)式的規(guī)范。
中括號右邊是*,表示一個(gè)或多個(gè)。

第二個(gè)和第三個(gè)\中間沒有東西,表示空

g表示替換原來buffer(緩沖區(qū))中的,sed在處理字符串的時(shí)候并不對源文件進(jìn)行直接處理,先創(chuàng)建一個(gè)buffer,但是加g表示對原buffer進(jìn)行替換

整體的意思是:用空字符去替換一個(gè)或多個(gè)用空格或tab開頭的本體字符串

2、刪除行末空格

復(fù)制代碼 代碼如下:

sed ‘s/[ \t]*$//g'

和上面稍微有些不同是前面刪除了^符,在后面加上了美元符,這表示以xx結(jié)尾的字符串為對象。

但是要注意在KSH中,Tab并不是\t而是直接打入一個(gè)Tab就可以了。

3、刪除所有的空格

復(fù)制代碼 代碼如下:

sed s/[[:space:]]//g

相關(guān)文章

最新評論