Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 仅在perl中使用$1到$9,我们还可以继续吗?_Regex_Perl - Fatal编程技术网

Regex 仅在perl中使用$1到$9,我们还可以继续吗?

Regex 仅在perl中使用$1到$9,我们还可以继续吗?,regex,perl,Regex,Perl,我要求在一个序列中匹配12个数字,但我被限制在第9个数字。有没有办法超越9场比赛 我的绳子有点像 {"Column5": "Null", "Column4": "Null", "Column6": "Null", "Column1": "END", "Column3": "Null", "Column2": "Null"} 如果列是固定的,但不是Null,则可以有任何序列/字符 我试着匹配列和后续字符串,但我有12个匹配项,而我只限于9美元 有什么建议吗?您可以轻松地将您的匹配项放入实际数组中

我要求在一个序列中匹配12个数字,但我被限制在第9个数字。有没有办法超越9场比赛

我的绳子有点像

{"Column5": "Null", "Column4": "Null", "Column6": "Null", "Column1": "END", "Column3": "Null", "Column2": "Null"}
如果列是固定的,但不是Null,则可以有任何序列/字符

我试着匹配列和后续字符串,但我有12个匹配项,而我只限于9美元


有什么建议吗?

您可以轻松地将您的匹配项放入实际数组中,而不必依赖1美元和朋友:

my@matches=$some_string=~/some regex和许多捕获/

或者,如注释中所建议的,如果您正在解析JSON数据,请使用JSON解析器。它将比基于快速正则表达式的解决方案更可靠。

请使用关于使用JSON解析器,或者至少使用实际数组来存储匹配项

Perl对捕获的数量没有硬性限制,或者限制太高,以至于无法运行合理的脚本。并显示您可以像往常一样在捕获组中引用9以外的匹配文本,即组10的值为10美元,组100的值为100美元


如果有人感到困惑,$1,$10。。。是在正则表达式之外用于引用捕获组内容的变量。它不是反向引用的语法,例如。\1、\10、。。。或者\g{1}、\g{10},…,在正则表达式中用于匹配捕获组捕获的相同文本。

您的代码在哪里?看起来像JSON,为什么不使用JSON解析器呢?