如果在R
中特定变量的字符串末尾出现一个数字(长度为一位或两位数)及其前面的点,我该如何删除它?例如:
z<-c("awe", "p.56.red.45", "ted.5", "you.88.tom")
我只想删除.45
和.5
。
答案 0 :(得分:17)
你只需要一个简单的正则表达式:
z_new = gsub("\\.[0-9]*$", "", z)
一些评论:
$
字符在字符串末尾查找模式[0-9]*
查找一个或多个数字。或者,您可以使用\\d*
或[[:digit:]]*
。\\.
匹配句号。我们需要用两个斜线逃脱全程。答案 1 :(得分:3)
试试这个
gsub("\\.[[:digit:]]*$", "", z)
答案 2 :(得分:-1)
执行此操作的最佳方法是使用正则表达式替换语句。如何执行此操作取决于您使用的语言。
这是识别尾随数字所需的正则表达式模式
(\ d {1,2})^
您只需将匹配项替换为""