R 哪些正则表达式代码允许我提取此特定文本?
我正在使用R 哪些正则表达式代码允许我提取此特定文本?,r,regex,stringr,R,Regex,Stringr,我正在使用R中的stringr库。我的R代码摘录如下所示: library(stringr) ... hotelname <- url %>% html_nodes(xpath = './/*[@id="hp_hotel_name"]') %>% html_text() 我只需要摘录第二部分:“海湾精品酒店(仅限成人)” 我尝试了以下方法,但无效: hotelname2 <- str_extract_all(hotelname, "
R
中的stringr
库。我的R代码摘录如下所示:
library(stringr)
...
hotelname <- url %>% html_nodes(xpath = './/*[@id="hp_hotel_name"]') %>%
html_text()
我只需要摘录第二部分:“海湾精品酒店(仅限成人)”
我尝试了以下方法,但无效:
hotelname2 <- str_extract_all(hotelname, "(?<=[A-Z]\n)([^\n]*)")
hotelname2是否提取\n
和\n
之间的文本
hotelname <- "\nHotel\nCove Boutique Hotel (Adults Only)\n"
sub('.*\n(.*)\n', '\\1', hotelname)
[1] "Cove Boutique Hotel (Adults Only)"
hotelname是否提取\n
和\n
之间的文本
hotelname <- "\nHotel\nCove Boutique Hotel (Adults Only)\n"
sub('.*\n(.*)\n', '\\1', hotelname)
[1] "Cove Boutique Hotel (Adults Only)"
hotelname修剪两端的空白,然后删除所有内容,包括\n
x <- "\nHotel\nCove Boutique Hotel (Adults Only)\n"
sub(".*\n", "", trimws(x))
## [1] "Cove Boutique Hotel (Adults Only)"
或者使用trimws,然后使用readLines:
readLines(textConnection(trimws(x)))[2]
## [1] "Cove Boutique Hotel (Adults Only)"
修剪\n末端的空白,然后删除所有内容,包括\n
x <- "\nHotel\nCove Boutique Hotel (Adults Only)\n"
sub(".*\n", "", trimws(x))
## [1] "Cove Boutique Hotel (Adults Only)"
或者使用trimws,然后使用readLines:
readLines(textConnection(trimws(x)))[2]
## [1] "Cove Boutique Hotel (Adults Only)"
如果您使用的是stringr
,一个很好的函数是str_squish()
,它可以删除所有空格和换行符等
hotelname2 <- str_squish(hotelname)
hotelname2%
html\u text()%%>%str\u squish
如果您使用的是stringr
,一个很好的函数是str_squish()
,它可以删除所有空格和换行符等
hotelname2 <- str_squish(hotelname)
hotelname2%
html\u text()%%>%str\u squish
或者,您可以将stru extract
与look ahead和look behind regex一起使用,以获得所需的结果
hotelname <- "\nHotel\nCove Boutique Hotel (Adults Only)\n"
hotelname2 <- str_extract(hotelname, "(?<=Hotel\n).*(?=\n)")
hotelname或者,您可以使用str_extract
和look ahead和look behind regex来获得所需的结果
hotelname <- "\nHotel\nCove Boutique Hotel (Adults Only)\n"
hotelname2 <- str_extract(hotelname, "(?<=Hotel\n).*(?=\n)")
hotelname此字符串是否总是介于第二个和第三个\n之间?此字符串是否总是介于第二个和第三个\n之间?