Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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中应用,则替换第二个空格\n_R_Regex_Gsub - Fatal编程技术网

如果在R中应用,则替换第二个空格\n

如果在R中应用,则替换第二个空格\n,r,regex,gsub,R,Regex,Gsub,我有一个文本向量,比如说: vector <- c("20 DE NOVIEMBRE", "CENTRO", "EL ARENAL 4A SECCION", "IGNACIO ZARAGOZA", "JARDIN BALBUENA", "MOCTEZUMA 2A SECCION", "MORELOS", "PEON DE LO

我有一个文本向量,比如说:

vector <- c("20 DE NOVIEMBRE",  "CENTRO", "EL ARENAL 4A SECCION",     "IGNACIO ZARAGOZA", "JARDIN BALBUENA", "MOCTEZUMA 2A SECCION",    "MORELOS", "PEON DE LOS BAOS")

如何获得它?

一种方法,使用捕获组的
sub

vector <- sub("^(\\S+) (\\S+) ", "\\1 \\2\n", vector)
vector

[1] "20 DE\nNOVIEMBRE"      "CENTRO"                "EL ARENAL\n4A SECCION"
[4] "IGNACIO ZARAGOZA"      "JARDIN BALBUENA"       "MOCTEZUMA 2A\nSECCION"
[7] "MORELOS"               "PEON DE\nLOS BAOS"    
vector您可以使用

vector <- c("20 DE NOVIEMBRE",  "CENTRO", "EL ARENAL 4A SECCION",     "IGNACIO ZARAGOZA", "JARDIN BALBUENA", "MOCTEZUMA 2A SECCION",    "MORELOS", "PEON DE LOS BAOS")
sub("^\\S+\\s+\\S+\\K\\s+", "\n", vector, perl=TRUE)
正则表达式是
^\S+\S+\S+\K\S+
(请参阅),它与

  • ^
    -字符串的开头
  • \S+
    -1+非空白
  • \s+
    -1+空格
  • \S+
    -1+非空白
  • \K
    -匹配重置运算符放弃所有到目前为止匹配的文本
  • \s+
    -1+空格字符
vector <- sub("^(\\S+) (\\S+) ", "\\1 \\2\n", vector)
vector

[1] "20 DE\nNOVIEMBRE"      "CENTRO"                "EL ARENAL\n4A SECCION"
[4] "IGNACIO ZARAGOZA"      "JARDIN BALBUENA"       "MOCTEZUMA 2A\nSECCION"
[7] "MORELOS"               "PEON DE\nLOS BAOS"    
vector <- c("20 DE NOVIEMBRE",  "CENTRO", "EL ARENAL 4A SECCION",
            "IGNACIO ZARAGOZA", "JARDIN BALBUENA", "MOCTEZUMA 2A SECCION",
            "MORELOS", "PEON DE LOS BAOS")
vector <- c("20 DE NOVIEMBRE",  "CENTRO", "EL ARENAL 4A SECCION",     "IGNACIO ZARAGOZA", "JARDIN BALBUENA", "MOCTEZUMA 2A SECCION",    "MORELOS", "PEON DE LOS BAOS")
sub("^\\S+\\s+\\S+\\K\\s+", "\n", vector, perl=TRUE)
[1] "20 DE\nNOVIEMBRE"      "CENTRO"                "EL ARENAL\n4A SECCION"
[4] "IGNACIO ZARAGOZA"      "JARDIN BALBUENA"       "MOCTEZUMA 2A\nSECCION"
[7] "MORELOS"               "PEON DE\nLOS BAOS"