gsub("([a-z]+)([0-9]+)","\\2","ytu678yu")
[1] "678yu"
gsub("([a-z]+)([0-9]+)(.*)","\\2","ytu678yu")
[1] "678"
我想知道为什么gsub("([a-z]+)([0-9]+)","\\2","ytu678yu")
无法获得678
?
答案 0 :(得分:3)
在第一种情况下,模式匹配“ytu678”然后用“\ 2”替换为“678”,所以最后得到“678yu”。
在第二种情况下,模式匹配“ytu678yu”,然后将其替换为“\ 2”即“678”,所以最后得到“678”。
试试这个:
> gsub("([a-z]+)([0-9]+)","","ytu678yu")
[1] "yu"
> gsub("([a-z]+)([0-9]+)(.*)","","ytu678yu")
[1] ""