0
我有很多不潔數據的形式:的R - 使用GSUB替換字符串()
abc
abc/def
abc/de
abc/d
abc/def/i j k
abc/def/i
abc/def/i j
這僅僅是我想改變的數據的一部分。這是更大的一組數據的一部分。
我想將所有元素更改爲abc/def/i j k
。 我已經使用了gsub()
功能如下:
gsub('abc[a-z/]', 'abc/def/i j k', str)
輸出:
abc/def/i j k
abc/def/i j k/def
abc/def/i j k/de
abc/def/i j k/d
的問題是它取代了圖案的任何發生。
那裏我得到了足夠體面的結果,唯一的解決辦法是在那裏我硬編碼的所有這樣可能的選項:
gsub('abc$|abc/d$|abc/de$|abc/def/i$', 'abc/def/i j k', str)
但是,這不會,如果有任何新的數據的變化工作。 所以我想知道是否有可能得到沒有硬編碼參數的結果。
所以其他0+字符,被'abc' /'def'佔位符?否則,'^ abc [a-z /] * $'將與'sub'一起使用。 –
如果我理解正確,你希望所有的元素都變成「abc/def」,那麼爲什麼不使用'rep(「abc/def」,length(str))'? –
試試'sub(「(abc)[/ az] *」,「\\ 1/def」,x)'或'sub(「^(abc)[/ az] * $」,「\\ 1/def 「,x)' –