Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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
Regex R中空格分隔的文本到向量_Regex_R - Fatal编程技术网

Regex R中空格分隔的文本到向量

Regex R中空格分隔的文本到向量,regex,r,Regex,R,我有一个向量首字母 initial<-paste("A,B","C,D","E,F",sep=" ") 应该如何处理它?您可以使用strsplit()进行处理。对于可能的一个或多个空格,我们使用\\s+作为分割值。然后,由于strsplit()返回一个列表,它的第一个参数的长度,因此我们可以使用“subset”[[1]]返回一个字符向量 strsplit(initial, "\\s+")[[1]] 您可以为此使用strsplit()。对于可能的一个或多个空格,我们使用\\s+作为分割值

我有一个向量首字母

initial<-paste("A,B","C,D","E,F",sep=" ")

应该如何处理它?

您可以使用
strsplit()
进行处理。对于可能的一个或多个空格,我们使用
\\s+
作为分割值。然后,由于
strsplit()
返回一个列表,它的第一个参数的长度,因此我们可以使用“subset”
[[1]]
返回一个字符向量

strsplit(initial, "\\s+")[[1]]

您可以为此使用
strsplit()
。对于可能的一个或多个空格,我们使用
\\s+
作为分割值。然后,由于
strsplit()
返回一个列表,它的第一个参数的长度,因此我们可以使用“subset”
[[1]]
返回一个字符向量

strsplit(initial, "\\s+")[[1]]

这是另一种选择:

scan(text=initial, what='')
# [1] "A,B" "C,D" "E,F"

这是另一种选择:

scan(text=initial, what='')
# [1] "A,B" "C,D" "E,F"
这里有两个选择。第一种方法基本上与strsplit方法相同,第二种方法使用字节模式匹配而不是正则表达式,并丢弃空拆分(用于处理拆分之间的可变数量的空格)

这里有两个选择。第一种方法基本上与strsplit方法相同,第二种方法使用字节模式匹配而不是正则表达式,并丢弃空拆分(用于处理拆分之间的可变数量的空格)


不是最好的答案,但为了好玩,我们可以提取符合char的术语,char模式后跟空格或字符串结尾:

initial<-paste("A,B","C,D","E,F",sep=" ")

library(stringi)
stringi::stri_extract_all_regex(initial, "[^,],[^,](?=(\\s|$))")

initial不是最好的答案,但为了好玩,我们可以提取符合char的术语,char模式后跟空格或字符串结尾:

initial<-paste("A,B","C,D","E,F",sep=" ")

library(stringi)
stringi::stri_extract_all_regex(initial, "[^,],[^,](?=(\\s|$))")
首字母