Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果字符串以数字开头,如何删除数字,但保留所有其他内容(在r中)?_R_String_Vector_Split_Character - Fatal编程技术网

如果字符串以数字开头,如何删除数字,但保留所有其他内容(在r中)?

如果字符串以数字开头,如何删除数字,但保留所有其他内容(在r中)?,r,string,vector,split,character,R,String,Vector,Split,Character,我正在处理R中的数据,有一个与字符串相关的问题。 如果我有一个向量,比如说书 books <- c('123 Book1 331','51 Book2','Book3 69','Book4') 在R中我必须使用什么软件包?什么函数?您可以简单地将gsub与您自己的正则表达式一起使用。例如: books <- c('123 Book1 331','51 Book2','Book3 69','Book4') gsub("^.*?([a-zA-Z]+.+)", "\\1", books

我正在处理R中的数据,有一个与字符串相关的问题。 如果我有一个向量,比如说书

books <- c('123 Book1 331','51 Book2','Book3 69','Book4')
在R中我必须使用什么软件包?什么函数?

您可以简单地将gsub与您自己的正则表达式一起使用。例如:

books <- c('123 Book1 331','51 Book2','Book3 69','Book4')

gsub("^.*?([a-zA-Z]+.+)", "\\1", books)

[1] "Book1 331" "Book2"     "Book3 69"  "Book4"    
您可以简单地将gsub与自己的正则表达式一起使用。例如:

books <- c('123 Book1 331','51 Book2','Book3 69','Book4')

gsub("^.*?([a-zA-Z]+.+)", "\\1", books)

[1] "Book1 331" "Book2"     "Book3 69"  "Book4"    

下面是另一个使用sub的变体,它不需要捕获组:

books <- c('123 Book1 331','51 Book2','Book3 69','Book4')
sub("^\\d+\\s+", "", books)

[1] "Book1 331" "Book2"     "Book3 69"  "Book4"

下面是另一个使用sub的变体,它不需要捕获组:

books <- c('123 Book1 331','51 Book2','Book3 69','Book4')
sub("^\\d+\\s+", "", books)

[1] "Book1 331" "Book2"     "Book3 69"  "Book4"

很好:!gsub^[:digit:][]+,\\1,书也有用,对吗?是的,基本上相反。尽管您仍然必须删除尾随空格!很好:!gsub^[:digit:][]+,\\1,书也有用,对吗?是的,基本上相反。尽管您仍然必须删除尾随空格!“和你的情况很相似。”jazzuro谢谢你指出这一点。不幸的是,我无法用提供的解决方案得到答案。“和你的情况很相似。”jazzuro谢谢你指出这一点。不幸的是,我无法用提供的解决方案得到答案。