gpt4 book ai didi

c++ - 使用 tr1::regex_search 来匹配一个大的字符串列表

转载 作者:行者123 更新时间:2023-11-28 07:42:34 25 4
gpt4 key购买 nike

我需要匹配任何一个字符串列表,我想知道我是否可以只使用类似于 "item1|item2|item3|..." 的正则表达式只是为每个字符串做一个单独的 strstr()。但该列表可能相当大 - 最多 10000 项。正则表达式可以很好地工作吗?会比单独搜索每个字符串更快吗?

最佳答案

正则表达式可以工作,而且肯定比搜索每个字符串更快。虽然我不确定在给定 10000 个输入模式的情况下初始设置会占用多少内存或时间。

不过,这是一个众所周知的问题,有很多具体的算法,例如:

和其他几个。它们都有不同的权衡,所以选择你的毒药。

在我们的项目中,我们需要多重替换解决方案,因此我们选择了 Aho-Corasick 算法并在其上构建了替换功能。

关于c++ - 使用 tr1::regex_search 来匹配一个大的字符串列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15503372/

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