首先,嘗試利用gsub函式首先,嘗試利用gsub函式
a<-"ab(cd)efg(i)jk"
gsub("[(.*)]", "", a)
[1] 「abcdefgijk」
發現只是把括號去除了,沒有去掉括號當中的字元。
gsub("\\(.*\\)","",a)
[1]」abjk」
能去掉第乙個左括號和第乙個右括號之間的字元
gsub("\\(.*?\\)","",a)
[1] 「abefgjk」
終於去掉所有的括號
然後,另外乙個方法就是利用(stringr)包,這個包比較好記,語法沒有那麼生硬。stringr包是用來處理字串的。r語言本身的 字元處理 能力已經不錯了,但使用起來並不是很方便。stringr包將原本的字元處理函式進行了打包,統一了函式名和引數。在增強功能基礎上,還能處理向量化資料並相容非字元資料。stringr包號稱能讓處理字
library(stringr)
str_replace_all(a,"\\((.*?)\\)","");#去掉所有的括號和括號中的值
下面的程式是樓主請教一位c語言高手寫出的程式。int main(int argc, char* argv)
else
if(i-1 >= 0 && i-1
< len && str_input[i-1] == ')')
// let 'omit' to be 'false' if the previous position is ')'
// copy from input into output if 'omit' is 'false
if(!omit)
}// print input string
std::cout
<< "input string: "
<< str_input << std::endl;
// print output string
std::cout
<< "output string: "
<< str_output << std::endl;
return
0;}
R語言 字串
在r中字串出現的地方要加引號 nchar函式可以返回字串的長度,空格也算乙個字串 length函式返回向量內字串的個數 paste可以將多個字串合併為乙個,在此函式裡可以設定sep函式設定分隔符 substr用於提取字串,函式引數分別為 乙個原始的字串,乙個起始點,乙個結束點,函式返回起始點和結束點...
去除字串中重複字元
設計演算法並寫出 移除字串中重複的字元,不能使用額外的快取空間。注意 可以使用額外的乙個或兩個變數,但不允許額外再開乙個陣列拷貝。進一步地,為你的程式寫測試用例。這道題目其實是要你就地 in place 將字串中重複字元移除。你可以向面試官問清楚,不能使用額外的乙份陣列拷貝是指根本就不允許開乙個陣列...
R語言處理字串
用於字串分割的函式 如strsplit 123abcdefgabcdef ab 1 1 123 cdefg cdef 字串連線 paste paste sep collapse null 字串分割 strsplit strsplit x,split,extended true,fixed false...