gpt4 book ai didi

r - Stringr str_replace_all 遗漏重复项

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

我在使用 stringr::str_replace_all 函数时遇到问题。我正在尝试将 iv 的所有实例替换为 insuredvehicle,但该函数似乎只包含第一个术语。

temp_data <- data.table(text = 'the driver of the 1st vehicle hit the iv iv at a stop')
temp_data[, new_text := stringr::str_replace_all(pattern = ' iv ', replacement = ' insuredvehicle ', string = text)]

结果如下所示,错过了第二个 iv 学期:

1: the driver of the 1st vehicle hit the insuredvehicle iv at a stop

我认为问题在于 2 个实例共享一个空间,这是搜索模式的一部分。我这样做是因为我想替换 iv 术语,而不是 driver 中的 iv

我不想简单地将重复项合并为 1。我希望结果如下所示:

1: the driver of the 1st vehicle hit the insuredvehicle insuredvehicle at a stop

如果能帮我实现这个功能,我将不胜感激!

最佳答案

也许如果您在正则表达式中包含单词边界,而不是从替换中删除空格?当您只需要一个与模式匹配的完整单词而不是部分单词,同时避免这些空格问题时,这是理想的选择。\\b似乎可以解决问题

temp_data[, new_text := stringr::str_replace_all(pattern = '\\biv\\b', replacement = 'insuredvehicle', string = text)]

new_text

1: the driver of the 1st vehicle hit the insuredvehicle insuredvehicle at a stop

关于r - Stringr str_replace_all 遗漏重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67575754/

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