Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.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 在正则表达式中,什么是回溯/回溯引用?_Regex - Fatal编程技术网

Regex 在正则表达式中,什么是回溯/回溯引用?

Regex 在正则表达式中,什么是回溯/回溯引用?,regex,Regex,使用正则表达式回溯意味着什么 另外,你能举个例子吗 回溯引用和回溯是两件不同的事情。前者在以后的代码中使用捕获的结果,例如 (['"]).*?\1 这将匹配单引号或双引号字符串(暂时忽略转义)。它使用一个反向引用来引用开放符号(单引号或双引号),以便在末尾匹配该符号 另一方面,当匹配失败时,回溯是正则表达式在匹配过程中自然执行的操作。例如,如果我匹配表达式 .+b 背道而驰 aaaaaabcd 然后它将首先在+上匹配aaaaaa bc,并将b与剩余的d进行比较。此操作失败,因此它会回溯一点

使用正则表达式回溯意味着什么


另外,你能举个例子吗

回溯引用和回溯是两件不同的事情。前者在以后的代码中使用捕获的结果,例如

(['"]).*?\1
这将匹配单引号或双引号字符串(暂时忽略转义)。它使用一个反向引用来引用开放符号(单引号或双引号),以便在末尾匹配该符号

另一方面,当匹配失败时,回溯是正则表达式在匹配过程中自然执行的操作。例如,如果我匹配表达式

.+b
背道而驰

aaaaaabcd

然后它将首先在
+
上匹配
aaaaaa bc
,并将
b
与剩余的
d
进行比较。此操作失败,因此它会回溯一点,并将
aaaaaa b
+
匹配,然后将最终的
b
c
进行比较。这也失败了,因此它再次回溯并尝试
aaaaaaa
以获得
+
,然后将
b
b
匹配并成功。

假设回溯=回溯,类似的问题:在