51得票4回答
分割字符串并获取最后一个元素

假设我有一个列,其中包含以下值:foo/bar chunky/bacon/flavor /baz/quz/qux/bax 即一个由/分隔的可变字符串数量。在另一列中,我想获取每个字符串在/上拆分后的最后一个元素。因此,该列将包含:bar flavor bax 我无法理解这个问题。我可以按/分割...

39得票3回答
Java中是否存在类似RE2的正则表达式库?

有没有人遇到过类似于 Google 的正则表达式库 RE2 的 Java 版本,或者具有类似功能和良好性能的 Java 库?其性能要求是与正则表达式长度和输入文本长度成线性关系。 澄清 大多数正则表达式实现使用回溯算法来匹配输入文本,因此在某些简单正则表达式(例如 (.*).(.*).(....

23得票8回答
在Google表格公式中多个正则表达式匹配

我正在尝试使用 Google Sheets 的正则表达式公式,在给定的字符串中(比如单元格 A1 中)获取破折号前面的所有数字列表:=REGEXEXTRACT(A1, "\d-") 我的问题是它只返回第一个匹配项... 如何获取所有匹配项? 示例文本:"A1-Nutrition;A2-Act...

22得票5回答
使用Python可以使用re2吗?

我刚刚发现了一个很有前途的库 - http://code.google.com/p/re2,它使用一种长期被忽视的方法 (Thompson NFA) 来实现正则表达式引擎,速度比 awk、Perl 或 Python 中的可用引擎快上几个数量级。 于是我下载了代码并使用了常规的 sudo mak...

21得票3回答
使用 re2 中的正向先行断言 (?=regex)

由于我对re2不太熟悉,我正在尝试弄清如何在Go中使用类似JS、C ++或任何PCRE风格的正向前瞻(?=regex)。 以下是我正在寻找的一些示例。 JS:'foo bar baz'.match(/^[\s\S]+?(?=baz|$)/); Python:re.match('^[\s\S...

17得票1回答
为什么std::regex比其他正则表达式库慢得出了名?

这个Github代码库在正则表达式引擎列表中添加了std::regex,但它被其他引擎击败。 为什么libstdc++实现的std::regex比其他实现要慢那么多?原因是C++标准的要求还是这种特定的实现没有进行很好的优化? 在shootout中,即使添加了std::regex::ext...

15得票5回答
如何在Windows上构建Google RE2?

如何为Windows构建Google RE2?有人尝试过吗?

12得票2回答
谷歌RE2正则表达式测试工具

我正在寻找一个适用于Google大数据(RE2)正则表达式的测试工具。市面上有一些测试工具,但似乎没有一个能理解我的语句。以下是我尝试过的测试工具,它们对简单的表达式有效,但对我的表达式无效: https://regex101.com/ https://www.regextester.com...

10得票1回答
理解通过 Git 差异查看 xfuncname

我想知道git diff如何准确应用提供给xfuncname的表达式,并且是否可能将寻找块标题文本的搜索委托给另一个程序。背景:我想更改git diff的xfuncname设置,以显示针对xml文件的可用输出。例如,一个看起来像这样的xml文件:<layer1-1> </la...

10得票2回答
RE2语法中如何否定匹配?

如何在RE2中写一个正则表达式来匹配不以4或5开头的字符串? 在PCRE中,我会使用^(?!4),但是RE2不支持该语法。