如何从第一个方括号和最后一个圆括号中拆分 R 中的字符串?

伊娃

我正在处理法律引用。我想将引文分成四个部分。引文的一般格式如下:ABC v. DEF [Year] 引文数据(权威) 所以,我想把它分成四个部分 - ABC v. DEF、年份、引文数据和权威。问题是第一部分(即 ABC v. DEF)可能有额外的圆括号,而第三部分(即引文数据)可能有额外的方括号和/或圆括号。例如,在以下这种情况下

"Lubrizol Corporation, USA v. Asstt. DIT (International Taxation) [2013] 33 taxmann.com 424/60 SOT 118 (URO) (Mum. Trib.)"

第一部分是"Lubrizol Corporation, USA v. Asstt. DIT (International Taxation)",第二部分是"2013",第三部分是"33 taxmann.com 424/60 SOT 118 (URO)",最后一部分是"Mum. Trib."我无法想出正确的正则表达式来做到这一点。谁能帮我解决这个问题?

克里斯·鲁勒曼

使用extract

library(tidyr)
data.frame(txt) %>%
  extract(txt,
          into = c("First", "Sec", "Thrd", "Frth"),
          regex = "(.+)\\[(\\d+)\\](.*)\\((.*)\\)")
                                                              First  Sec                                  Thrd       Frth
1 Lubrizol Corporation, USA v. Asstt. DIT (International Taxation)  2013  33 taxmann.com 424/60 SOT 118 (URO)  Mum. Trib.

regex部分看起来比实际更可怕:您只需完整地描述字符串,将您希望提取的部分包装到括号中(用于捕获组的语法)

数据:

txt <- "Lubrizol Corporation, USA v. Asstt. DIT (International Taxation) [2013] 33 taxmann.com 424/60 SOT 118 (URO) (Mum. Trib.)"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

匹配gsub / r中的最后一个和第一个括号,并保留其余内容

如何使用R中的第一个括号将字符串分成多个部分?

将字符串的最后一个单词删除为 R 中的第一个单词

在Javascript的句子(多个句子)的第一个和最后一个单词中添加方括号

如何在字符的第一个(而不是最后一个)出现之前提取R中的字符串?

如何用R中的第一个所需符号分割字符串向量?

在R中查找条纹的第一个和最后一个日期

R:识别重复组中的第一个和最后一个元素

如何从R中的向量中提取第一个和最后一个非空值?

R从字符串中删除第一个字符

序言:检查字符串的第一个和最后一个字符是否在左右方括号内('{'&'}')

仅使用 r 中的最后一个分隔符拆分字符串

根据条件替换R中字符串的第一个元素

获取R中字符串的第一个大写字母的索引?

在R中的各列之间保留字符串的第一个实例

如果返回“ \ r”,如何控制字符串中的第一个字符?

Javascript删除字符串中的最后一个方括号[]

测量每天的第一个和最后一个位置记录与R中的动物之间的距离

正则表达式查找要在JS中拆分的第一个开始和最后一个结束括号

R字符串中的最后一个斜杠后如何用“ _”替换空格

从字符串中删除第一个和最后一个空行

蜂巢:字符串中的第一个和最后一个出现

如何在 R 中列表的每个向量(不同长度)中附加第一个和最后一个元素,而不会使代码变慢?

用R中的条件删除字符串的第一个字符

preg_match括号中的第一个字符串

如何从字符串中删除第一个和最后一个字符?

从不同表中选择行,其中 R 中存在第一个表列中的字符串

如何在r中不使用NA的情况下选择第一个和最后一个测试

R正则表达式:第一个和最后一个空格之间的匹配字符串