如何在 gsub 替换中使用通配符
How to use wildcard in gsub replacement
我有一列字符串,例如
strings <- c("SometextPO0001moretext", "SometextPO0008moretext")
'sometext' 和 'moretext' 部分的长度是可变的。我想删除字符串的 PO000* 部分,其中 * 是通配符。我试过了
gsub("PO000*", "", strings)
并在 Google 上搜索了很多,但令人惊讶的是没有找到这个看似简单问题的答案。由于最后一个字符不同,我希望能够以这种方式进行删除,而不是对大量变体进行硬编码。任何帮助,将不胜感激!
对于单个外卡,您需要使用.
。您使用的 *
对最后一个字符重复 0 次或多次,即 0
.
gsub("PO000.", "", strings)
会删除 PO0001
和 PO0008
我觉得应该是gsub("PO000\d{1}", "", strings)
结果是:
[1] "Sometextmoretext" "Sometextmoretext"
我有一列字符串,例如
strings <- c("SometextPO0001moretext", "SometextPO0008moretext")
'sometext' 和 'moretext' 部分的长度是可变的。我想删除字符串的 PO000* 部分,其中 * 是通配符。我试过了
gsub("PO000*", "", strings)
并在 Google 上搜索了很多,但令人惊讶的是没有找到这个看似简单问题的答案。由于最后一个字符不同,我希望能够以这种方式进行删除,而不是对大量变体进行硬编码。任何帮助,将不胜感激!
对于单个外卡,您需要使用.
。您使用的 *
对最后一个字符重复 0 次或多次,即 0
.
gsub("PO000.", "", strings)
会删除 PO0001
和 PO0008
我觉得应该是gsub("PO000\d{1}", "", strings)
结果是:
[1] "Sometextmoretext" "Sometextmoretext"