gpt4 book ai didi

regex - 删除R中字符串中大写字母的第一个实例之前的字符

转载 作者:行者123 更新时间:2023-12-04 19:01:01 24 4
gpt4 key购买 nike

我正在尝试删除字符串向量中每个字符串的第一个大写字母实例之前的所有字符:

x <- c(" its client Auto Group",  "itself and Phone Company", ", client Large Bank")

我试过了:
sub('.*?[A-Z]', '', x) 

但这会返回:
"uto Group"  "hone Company"   "arge Bank"

我需要它返回:
"Auto Group"    "Phone Company" "Large Bank"

有任何想法吗?

谢谢。

最佳答案

您需要使用带有反向引用的捕获组:

sub("^.*?([A-Z])", "\\1", x)

这里,
  • ^ - 字符串的开头
  • .*? - 尽可能少的任何 0+ 个字符
  • ([A-Z]) - 捕获组 1 捕获将被 \1 引用的大写 ASCII 字母在替换模式中。

  • 因此,我们通过反向引用恢复我们在结果中捕获的内容。

    关于regex - 删除R中字符串中大写字母的第一个实例之前的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37842146/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com