我有A R串這樣插入在特定位置R中字符串的字符
a <- "(hi I am (learning R))"
我想在上面的字符串添加字符「x」,並使它像
"(hi I am (learning R)x)"
我怎樣纔能有效地使用R?
編輯:添加1更多信息: 假設模式可以啓動字符串,但到底最後2架將保持相同的所有時間而改變,我必須插入X它們之間所有的時間。
我有A R串這樣插入在特定位置R中字符串的字符
a <- "(hi I am (learning R))"
我想在上面的字符串添加字符「x」,並使它像
"(hi I am (learning R)x)"
我怎樣纔能有效地使用R?
編輯:添加1更多信息: 假設模式可以啓動字符串,但到底最後2架將保持相同的所有時間而改變,我必須插入X它們之間所有的時間。
您可以使用sub
,捕獲你要在其後插入,然後使用反向引用添加x
獨特的模式:
sub("(R\\))", "\\1x", a)
# [1] "(hi I am (learning R)x)"
更新上在的結尾插入兩個支架之間的字符字符串,最簡單的將匹配一個模式,並將其替換爲您所需的模式:
sub("\\) \\)$", "\\)x \\)", a)
# [1] "(hi I am (learning R)x)"
添加1個更多信息:模式可以改變爲開始字符串,但最後2個括號到最後將始終保持不變,我必須一直在它們之間插入x。 – HiveRLearner
感謝您的回覆,但詳細補充說我不知道早期的字符串模式。我只知道最後2個支架模式。有沒有什麼辦法可以使用這個信息,我必須在第二個最後的位置插入x(在第二個括號後) – HiveRLearner
我認爲第二個選項會做,它有什麼問題? – Psidom
您打算爲多個字符串執行此操作嗎?他們的模式是什麼?向一個示例字符串添加'x'雖然不重要,但它可能不適用於您的實際數據。 – Phil
sub(「R)」,「R)x」,a) – www
菲爾說的話,然後是ycw的評論或者''粘貼''''substr'或者'sprintf(「(嗨,我是(學習R)%s)」,「x」)' –