获取字符串中的第一个单词

obtaining first word in the string

我想从向量中提取第一个字符串。例如,

 y<- c('london/hilss', 'newyork/hills', 'paris/jjk')

我想获取符号“/”之前的字符串,即

  location 
  london
  newyork
  paris

一个非常简单的方法 gsub

gsub("/.*", '', y)
[1] "london"  "newyork" "paris"

这个正则表达式也可以正常工作。

正则表达式: ^[^\/]+

它将从字符串的开头开始匹配,直到找到 /

^ 外部字符 class []anchor 作为字符串的开头。

^里面的字符class表示negated character class

Regex101 Demo

你的例子很简单,对于更一般的情况,比如

y<- c('london/hilss', 'newyork.hills', 'paris-jjk')

也许下面会做得更好?

stringr::str_extract(y, '\w*')

stringr::str_extract(a, '\b*')