Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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 提取字符串中具有相同分隔符的多个部分_R_String_Pdf_Extract - Fatal编程技术网

R 提取字符串中具有相同分隔符的多个部分

R 提取字符串中具有相同分隔符的多个部分,r,string,pdf,extract,R,String,Pdf,Extract,对R来说,这是一个非常新的地方! 我需要提取出现在两个分隔符之间的字符串数据的某些部分(总是相同的2) 在下面提供的示例中,分隔符(左=此语句不是规则的一部分,右=personne ressource)出现两次,但在其他文件中可能出现20次 我想创建一个dataframe,在这个dataframe中,这两个分隔符之间的每一个不同文本段都被提取并放入不同的行中 提前谢谢 左分隔符:此语句不是规则的一部分 右分隔符:personne ressource 文本示例: 监管影响分析声明 (本声明不属于条

对R来说,这是一个非常新的地方! 我需要提取出现在两个分隔符之间的字符串数据的某些部分(总是相同的2)

在下面提供的示例中,分隔符(左=此语句不是规则的一部分,右=personne ressource)出现两次,但在其他文件中可能出现20次

我想创建一个dataframe,在这个dataframe中,这两个分隔符之间的每一个不同文本段都被提取并放入不同的行中

提前谢谢

左分隔符:此语句不是规则的一部分

右分隔符:personne ressource

文本示例:

监管影响分析声明 (本声明不属于条例的一部分。)问题 根据《植物保护法》(法案)提出的《森林有害生物补偿条例》(ifpcr)提交补偿申请的截止日期已经到期。这意味着安大略省米西索加市和多伦多市受管制区域内受影响的土地所有者,因检测到亚洲长角甲虫(一种非本地森林害虫)的侵扰,收到了处理其财产上受影响树木的通知2013年8月,他们没有资格获得赔偿。这些人遭受的损失与之前因该害虫的侵扰而使其财产上的树木受到该害虫影响的人(树木所有者)类似。不修改ifpcr也可能使消灭这种入侵性有害生物的有害生物管理战略面临风险。 人力资源 马塞尔·道森 国家博物馆 森林保护司林业生产部 韦格陶 卡米洛特大道59号加拿大食品检验局 渥太华(安大略省) k1a 0y9 电话:613-773-7265 复印员:613-228-6626 库里尔:马塞尔。dawson@inspection.gc.ca 接触 马塞尔·道森 国家经理 森林产品,植物保护部加拿大食品检验局 卡米洛特道59号 安大略省渥太华 k1a 0y9 电话:613-773-7265 传真:613-228-6626 电子邮件:马塞尔。dawson@inspection.gc.ca (本声明不属于条例的一部分。)问题 在过去十年中,在北美和整个欧洲,2c苯乙胺和相关物质(即盐、衍生物、异构体和衍生物盐以及2c苯乙胺异构体)的休闲用途一直在增加。这些物质被认为是设计药物,生产速度很快,很容易在互联网、狂欢节、夜总会和总店出售。 2c苯乙胺和相关物质的非致命和致命影响已在国际媒体和科学期刊上报道。报告的不良反应包括发冷、恶心、焦虑、困惑、, 人力资源 丹尼斯·阿瑟诺 环境和环境保护局局长 联合会秘书处 加拿大圣塔 加拿大统计局局长伊梅布尔150,普雷通尼大道 渥太华(安大略省) k1a 0t6
courriel:ocs\u regulatorypolicy-bsc\u这个问题比看起来更棘手。此解决方案首先将您的一串句子拆分为单个句子的向量。然后它使用
stringr
包中的
stru-match
对每个句子重复应用正则表达式。下面是我使用的正则表达式:

Hello.*?\\s+(.*?)[^\\w]?\\s+goodbye
这对你的数据和我测试的另一句话都很有效。在任何情况下,希望这个答案指向正确的方向,即使您以后需要再次调整正则表达式

require(stringr)

x <- as.character("Hello, my name is mat and I suck with R, goodbye. Hello, my name is Hector and I'm pretty good with R, goodbye.  Hello stuff goodbye.")
result <- str_match(unlist(strsplit(x, "\\.")), "Hello.*?\\s+(.*?)[^\\w]?\\s+goodbye")[, 2]
result

[1] "my name is mat and I suck with R"            
[2] "my name is Hector and I'm pretty good with R"
[3] "stuff"
require(stringr)

这个问题比表面上看起来更棘手。此解决方案首先将您的一串句子拆分为单个句子的向量。然后它使用
stringr
包中的
stru-match
对每个句子重复应用正则表达式。下面是我使用的正则表达式:

Hello.*?\\s+(.*?)[^\\w]?\\s+goodbye
这对你的数据和我测试的另一句话都很有效。在任何情况下,希望这个答案指向正确的方向,即使您以后需要再次调整正则表达式

require(stringr)

x <- as.character("Hello, my name is mat and I suck with R, goodbye. Hello, my name is Hector and I'm pretty good with R, goodbye.  Hello stuff goodbye.")
result <- str_match(unlist(strsplit(x, "\\.")), "Hello.*?\\s+(.*?)[^\\w]?\\s+goodbye")[, 2]
result

[1] "my name is mat and I suck with R"            
[2] "my name is Hector and I'm pretty good with R"
[3] "stuff"
require(stringr)

请向我们展示一些示例数据、您尝试匹配/提取的内容以及您期望的输出。#数据是完整的PDF,因此让我们使用以下示例x请向我们展示一些示例数据、您尝试匹配/提取的内容以及您期望的输出。#数据是完整的PDF,因此让我们再次使用以下示例xMe。。。我想我很快就和你谈过了。。。如果正确理解,则第一部分(类(strsplit(x,“\\”)使用点(.)将字符串拆分为多个部分(即句子),而第二部分(stru匹配)如果“你好”和“再见”出现在同一个创建的句子中,请提取它们之间的文本。在我们拥有的数据中,分隔符是出现在我们要提取的部分开头和结尾的两个句子。抱歉,我的示例(x)过于简化。请更新您的问题(而不是另一个夸张的注释)如果a正确理解第一部分(类(strsplit(x,“\\”)使用点(.)将字符串拆分为多个部分(即句子)。而第二部分(str_匹配)如果“你好”和“再见”出现在同一个创建的句子中,请提取它们之间的文本。在我们拥有的数据中,分隔符是出现在我们要提取的部分开头和结尾的两个句子。抱歉,我的示例(x)过于简化。请使用实际数据更新您的问题(而不是另一个臃肿的注释)。