R 从字符串中提取引号中的单词
我使用R从短文本片段中提取单词。具体地说,我想从字符串中提取任何出现在引号(“)中的单词,而不是出现在括号()中的单词 例如,我想要3个字符串中的第一个,而不是另外两个:R 从字符串中提取引号中的单词,r,regex,R,Regex,我使用R从短文本片段中提取单词。具体地说,我想从字符串中提取任何出现在引号(“)中的单词,而不是出现在括号()中的单词 例如,我想要3个字符串中的第一个,而不是另外两个: c('"hello" world', 'hello world', '("hello") world') 原始代码尝试 str_extract(x, '(?<=")[^$]+(?<=")') str_extract(x,”(?我们可以使用regex l
c('"hello" world', 'hello world', '("hello") world')
原始代码尝试
str_extract(x, '(?<=")[^$]+(?<=")')
str_extract(x,”(?我们可以使用regex lookaround
library(stringr)
ifelse(grepl('\\("', str1), NA, str_extract(str1, '(?<=")\\w+'))
#[1] "hello" NA NA
库(stringr)
ifelse(grepl('\\(“,str1))、NA、stru extract(str1,,(?我们可以使用regex lookaround
library(stringr)
ifelse(grepl('\\("', str1), NA, str_extract(str1, '(?<=")\\w+'))
#[1] "hello" NA NA
库(stringr)
如果ELSE(grepl(“\\(”,str1)、NA、str\u extract(str1,”(?您可以在str\u extract
中使用此正则表达式和嵌套的环视:
(?:断言我们之前有一个”
,但没有(
在”
[^”]+
:匹配任何非“
(?=(?!\)”)
:断言我们在之后有一个“
”,但在之后没有)
”
代码:
str_extract(x,”(?您可以在str_extract
中将此正则表达式与嵌套的环视一起使用:
(?:断言我们之前有一个”
,但没有(
在”
[^”]+
:匹配任何非“
(?=(?!\)”)
:断言我们在之后有一个“
”,但在之后没有)
”
代码:
str_extract(x),(?适用于前两种情况,但不适用于第三种情况(“hello”)world
适用于前两种情况,但不适用于第三种情况(“hello”)world
如下:str_extract(x),(?您将需要对其进行双斜杠。str_extract(x),(?简单环顾四周就够了吗?cat(stru extract)(x,'(?但是这将匹配“hello”
而不是hello
以下内容:str_extract(x),(?您需要将其双斜杠。str_extract(x),(?简单的环顾一下就够了吗?cat(str_extract(x),)但是这将匹配“hello”“
而不是你好
最后,我用你的代码来解决它。最后,我用你的代码来解决它