1
我希望這是足夠不同的相關,先前的職位來證明自己的線程;不幸的是,他們對我毫無幫助。我認爲我對部分替換的興趣,加對通配符的使用是獨一無二的,但是,如果我根本沒有足夠仔細地搜索或仔細閱讀,我會表示歉意!R gsub部分替換通配符
假設我有以下字符串:
str <- c("FOO_1", "FOO_2", "BAR_1", "BAR_2")
我想在FOO_1
用別的東西到底要更換1
,說A
。我試圖與這兩個
gsub("[^F.*](1)$", "\\_A", str)
和
gsub("^F.*(1)$", "\\_BLAH", str)
這樣做,但很明顯,他們都不工作,以取代只1
,留下其餘FOO_
完好,同時不改變BAR_1
。我有一個愚蠢的解決方案,只涉及一行grep()
和一行gsub()
,但如果這就是我所解決的問題,我會恨自己。
這裏的規則是什麼?只需在字符串末尾替換_1即可? 'sub(「_ 1 $」,「_A」,x)'?看看[這個演示](https://ideone.com/mKj7Uh) - 你在找什麼? –
不幸的是,沒有;我只想用'FOO'替換變量_starting_並用'1'替換_ending_。因此,例如,如果方法將「BAR_1」更改爲「BAR_A」,那就是失敗。 我只是試圖提供一個最小的工作示例,但在實際情況下,有幾個相同的變量排列。例如。,「FOO_A_1」,「FOO_B_1」等;我想要捕獲所有'^ FOO。* 1 $'(對不起,如果這是不正確的陳述)。 – ironchefsakai
['sub(「^(FOO。*)_1 $」,「\\ 1_A」,str)'](https://ideone.com/Nxqsi9)? –