r - 如何使用 R 在大字符串中提取模式(开始和结束)?

标签 r regex

我有一个大字符串,我想匹配/提取具有开始和结束搜索模式的模式。如何在 R 中完成?

字符串示例:

big_string <- "read.csv(\"http://company.com/students.csv\", header = TRUE)","solution":"# Preview students with str()\nstr(students)\n\n# Coerce Grades to character\nstudents$Grades <- read.csv(\"http://company.com/students_grades.csv\", header = TRUE)"

我想在此实例中提取 url 组件。因此,模式以 http 开头并以 .csv 结尾或任何扩展名(如果可能)。

http://company.com/students.csv

http://company.com/students_grades.csv

我多次尝试使用 gregexpr 都不走运提取模式。有人可以帮忙想出一种在 R 中执行此操作的方法吗?

最佳答案

stringr 包非常适合这种类型的应用程序:

library(stringr)
big_string <- 'read.csv(\"http://company.com/students.csv\", header = TRUE)","solution":"# Preview students with str()\nstr(students)\n\n# Coerce Grades to character\nstudents$Grades <- read.csv(\"http://company.com/students_grades.csv\", header = TRUE)'

results<-unlist(str_extract_all(big_string, "http:.+csv"))

搜索模式是以“http:”开头且至少有 1 个字符并以“csv”结尾的字符串

关于r - 如何使用 R 在大字符串中提取模式(开始和结束)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42149872/

相关文章:

regex - R:正则表达式 grep 所有第一次出现的百分比 ([0-9]*%)

包含分类数据和大量注释的反向 x 轴

Python 模式匹配

c# - 如何将 List<System.IO.FileInfo> 的类型转换为 List<string>?

R Shiny : reload a . Rda 文件在一天中的特殊时间 Shiny

r - 除当前行之外的所有组成员

r - 基于多列/行为新列分配唯一值

javascript - 如何用双引号替换“&ldquo?

java - 如何使用 Java 中命令的正则表达式从字符串中读取函数或有哪些替代选项?

正则表达式快速特别选择