10得票2回答
Raku正则表达式:如何知道在交替中捕获了哪个组

使用Perl(以及几乎所有正则表达式引擎),每个组都按顺序编号。 例如,对于以下代码:'bar' =~ m/(foo)|(bar)/; print $1 // 'x'; # (1-based index) print $2 // 'x'; # (1-based index) 打印输出xbar...

10得票1回答
正则表达式中,lookaround 和 non-capture group 有什么功能上的区别?

我正在尝试举一个使用正向先行断言而非捕获组无法胜任的例子,以进一步了解它们的用法。我提出的所有示例都可以使用非捕获组,因此我感觉没有完全掌握正向先行断言的用法。 以下是一个字符串(摘自SO示例),其中答案中使用了正向先行断言。用户想要仅在第一列的值以ABC开头并且最后一列具有“active”...

10得票2回答
在Java中使用正则表达式的g标志

在Java模式中使用正则表达式全局g标志是否可能?我尝试使用final Pattern pattern = Pattern.compile(regex,Pattern.DOTALL);,但它的行为不像全局标志。在Java中是否有任何解决方法?我的正则表达式是:private final Str...

10得票1回答
Nginx的location正则表达式中,需要对斜线进行转义吗?

Nginx使用PCRE引擎来评估正则表达式,文档说明不使用/分隔符,因此我们不必像在标准正则表达式中那样转义URI中的斜杠/。一个有效的nginx正则表达式示例是location ~* /myapp/.+\.php$。但是以下代码转义了斜杠:location ~ ^\/(?:index|cor...

10得票4回答
能否删除已匹配的捕获组,使其不参与匹配?

在PCRE2或任何支持前向反向引用的正则表达式引擎中,是否可以将之前循环迭代中匹配的捕获组更改为一个非参与捕获组(也称为未设置的捕获组或非捕获组),从而导致测试该组的条件语句与其“false”子句而不是“true”子句匹配? 例如,考虑以下PCRE正则表达式: ^(?:(z)?(?(1)a...

9得票2回答
Firefox提示语法错误:无效的正则表达式组。

我有几个用于表单验证的正则表达式,注意到我的项目在Firefox中无法访问,什么都没有显示!但是控制台中给出错误信息:SyntaxError: invalid regexp group nicRegex用于检查国家的身份证号码。格式应为937962723V或937962723X或任何11位数...

9得票2回答
Groovy:替换捕获组的惯用方法

我有一个字符串类似于这样:docker login -u username -p password docker-registry-url。 我使用execute在Groovy脚本中执行该命令。为了调试目的,在执行之前,我打印出该命令,但由于它包含敏感数据,因此我混淆了用户名和密码。 de...

8得票2回答
Android Java 正则表达式命名组

我想要使用 matcher.group("login"); 在Android 8+和Eclipse中,没有Matcher.group(String)的方法。你有没有(内置的)解决方案?

8得票1回答
正则表达式:如果存在,则捕获一个或多个组(Java)

我希望捕获匹配模式的分组,其中输入可以包含该组一次或多次。 例如: input = 12361 randomstuff371 12 Mar 16 138more random381 stuff73f 我希望能够捕获“12 Mar 16”这个文本。为此,我使用了简单的正则表达式: 从中...

8得票1回答
Raku正则表达式: 如何在lookahead中使用捕获组

我应该如何在预查表达式中使用捕获组? 这段代码: say "ab" ~~ m/(a) <?before (b) > /; 返回值: 「a」 0 => 「a」 但是我希望也能捕获 'b'。 有没有办法做到这一点? 我不想让'b'被排除在lookahead之外...