看板 R_Language 關於我們 聯絡資訊
文章分類提示: - 問題: 當你想要問問題時,請使用這個類別。 [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 我有一組字串,我想要移除"太陽能(kwh)"這個文字,只保留最前端的編號 "01","02","03",但是我發現如果要移除的文字中有() 括弧,則會無法成功 請要如何順利移除 [程式範例]: test <- c("01太陽能(kwh)","02太陽能(kwh)","03太陽能(kwh)") gsub("太陽能(kwh)","",test) [環境敘述]: 請提供 sessionInfo() 的輸出結果, sessionInfo() R version 4.1.3 Patched (2022-03-10 r81883) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 22000) [關鍵字]: 選擇性,也許未來有用 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.51.159.125 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1660638795.A.ECC.html
lycantrope: gsub("太陽能\\(kwh\\)", "", test) 08/16 16:39
celestialgod: gsub 是吃regular expression ()在re裡面有特別意 08/16 16:41
celestialgod: 義 所以你才會無法取代成功 可以使用跳脫字元來處 08/16 16:41
celestialgod: 理這類問題 08/16 16:41
celestialgod: 具體做法:gaub(“太陽能 \\(kwh\\)”,””,test) 08/16 16:41
xiangying: stringer::str_extract(name,"\\d*") 08/16 19:14
xiangying: *stringr:: 08/16 19:15
fox1375: 只要編號的話 gsub("([0-9]+)(.+)", "\\1", test) 更好 08/18 02:21
fox1375: 不管數字後面是什麼文字都可以用 08/18 02:21
hohiyan: 如果編號固定是前兩位數,偷懶作法 stubstr(test,1,2) 08/18 06:06
hohiyan: typo... @@ 應該是 substr(test, 1, 2) 08/18 06:08