2-gsub()函數(shù)——替換字符工具

要想批量替換一些字符串還需要在excel完成嗎腻窒?Nope,代碼也可哦驻债,今天又get到了一個新的知識點标锄,認識了一個新的函數(shù)了,一起來學習一下吧~


image

gsub()可以用于字段的刪減端盆、增補、替換和切割费封,可以處理一個字段也可以處理由字段組成的向量焕妙。

具體的使用方法為:gsub("目標字符", "替換字符", 對象)

>text1 <- "ABcdEfgh . ljkl MNNM"
>gsub("Efg","RRR",text1)  # #將Efg改為RRR,區(qū)分大小寫
[1] "ABcdRRRh . ljkl MNNM" 
  • 任何符號弓摘,包括空格焚鹊、Tab和換行都是可以識別的
> gsub(" l","q",text1)   # #可識別空格
[1] "ABcdEfgh .qjkl MNNM"
  • 同時字符可以識別多個,進行批量置換
> gsub("M","O",text1)
[1] "ABcdEfgh . ljkl ONNO"
  • 除此之外韧献,gsub還有其他批量操作的方法
> gsub("^.* ", "a", text1) #選擇從開頭到第一個空格(注意字符"^.* "后引號前有一個空格)替換為a
[1] "aMNNM"
> gsub("^.*l(j).*$","\\1",text1) ##只保留一個j
[1] "j"
> gsub(" .*$","b",text1)  # #第一個空格直達結(jié)尾替換成b
[1] "ABcdEfghb"
> gsub("\\.","\\+",text1)  # #句號.和加號+是特殊的末患,要添加\\來識別
[1] "ABcdEfgh + ljkl MNNM"

sub()提供一個替換值研叫,可以是字符串或函數(shù),和一個要被處理的字符串璧针。

那么sub()和gsub()函數(shù)有什么區(qū)別呢嚷炉?

> text <- c("we are the world", "we are the children")
> sub("w", "W", text)  #第一個句子有兩個w,但sub()只識別第一個相應的字符
[1] "We are the world"    "We are the children"
> sub("W","w",text)
[1] "we are the world"    "we are the children"
> gsub("W","w",text) #gsub()識別全部對應的字符
[1] "we are the world"    "we are the children"
> gsub("w","W",text) 
[1] "We are the World"    "We are the children"
> sub(" ", "", "abc def ghi")
[1] "abcdef ghi"
> gsub(" ", "", "abc def ghi")
[1] "abcdefghi"
  • 從上面的輸出結(jié)果可以看出探橱,sub()和gsub()的區(qū)別在于申屹,前者只替換第一次匹配的字符串,而后者會替換掉所有匹配的字符串隧膏。
  • 注意:gsub()是對向量里面的每個元素進行搜素哗讥,如果發(fā)現(xiàn)元素里面有多個位置匹配了模式,則全部進行替換私植,而grep()也是對向量里每個元素進行搜索忌栅,但它僅僅知道元素是否匹配了模式(并返回該元素在向量中的下標),但具體元素中匹配了多少次卻無法知道曲稼。

參考來源:
https://www.cnblogs.com/nkwy2012/p/8625063.html
https://blog.csdn.net/lztttao/article/details/82086346

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末索绪,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子贫悄,更是在濱河造成了極大的恐慌瑞驱,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件窄坦,死亡現(xiàn)場離奇詭異唤反,居然都是意外死亡,警方通過查閱死者的電腦和手機鸭津,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進店門彤侍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人逆趋,你說我怎么就攤上這事盏阶。” “怎么了闻书?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵名斟,是天一觀的道長。 經(jīng)常有香客問我魄眉,道長砰盐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任坑律,我火速辦了婚禮岩梳,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己蒋腮,他們只是感情好淘捡,可當我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著池摧,像睡著了一般焦除。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上作彤,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天膘魄,我揣著相機與錄音,去河邊找鬼竭讳。 笑死创葡,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的绢慢。 我是一名探鬼主播灿渴,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼胰舆!你這毒婦竟也來了骚露?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤缚窿,失蹤者是張志新(化名)和其女友劉穎棘幸,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體倦零,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡误续,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了扫茅。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蹋嵌。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖葫隙,靈堂內(nèi)的尸體忽然破棺而出栽烂,到底是詐尸還是另有隱情,我是刑警寧澤停蕉,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站钙态,受9級特大地震影響慧起,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜册倒,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一蚓挤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦灿意、人聲如沸估灿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽馅袁。三九已至,卻和暖如春荒辕,著一層夾襖步出監(jiān)牢的瞬間汗销,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工抵窒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留弛针,地道東北人。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓李皇,卻偏偏與公主長得像削茁,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子掉房,可洞房花燭夜當晚...
    茶點故事閱讀 44,713評論 2 354