小编Bal*_*ury的帖子

用于正则表达式捕获组的R函数是什么?

我正在R中进行一些文本争论,对于特定的提取,我需要使用捕获组.由于某种原因,我熟悉的base/stringr函数似乎不支持捕获组:

str_extract("abcd123asdc", pattern = "([0-9]{3}).+$") 
# Returns: "123asdc"

stri_extract(str = "abcd123asdc", regex = "([0-9]{3}).+$")
# Returns: "123asdc"

grep(x = "abcd123asdc", pattern = "([0-9]{3}).+$", value = TRUE)
# Returns: "abcd123asdc"
Run Code Online (Sandbox Code Playgroud)

通常谷歌搜索"R捕获组正则表达式"没有给出解决这个问题的任何有用的点击.我错过了什么,或者是R中没有实现的捕获组?

编辑:所以在尝试解决方案中建议的解决方案,这是一个小例子,它失败了我的情况.

请注意,这是来自enron电子邮件数据集的文本,因此不包含敏感信息.

txt <- "Message-ID: <24216240.1075855687451.JavaMail.evans@thyme>
Date: Wed, 18 Oct 2000 03:00:00 -0700 (PDT)
From: phillip.allen@enron.com
To: leah.arsdall@enron.com
Subject: Re: test
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-From: Phillip K Allen
X-To: Leah Van Arsdall
X-cc: 
X-bcc: 
X-Folder: \\Phillip_Allen_Dec2000\\Notes Folders\\sent mail   
X-Origin: Allen-P
X-FileName: pallen.nsf

test successful.  way to …
Run Code Online (Sandbox Code Playgroud)

regex r

4
推荐指数
1
解决办法
1050
查看次数

标签 统计

r ×1

regex ×1