【发布时间】:2016-02-06 06:13:37
【问题描述】:
我刚刚开始学习 Perl,我想知道在 Perl 中用于捕获和反向引用的括号之间的区别,以及每个括号更有用的情况?
当我说用于捕获的括号时,我指的是以下内容:
if ($email =~ /([^@]+)@(.+)/) {
print "Username is $1\n";
print "Hostname is $2\n";
}
当我说反向引用时,我指的是以下内容:
# (.)\1
# (.) = capture group; \1 = reference group
# (.)(.)\2\1; This pattern has 2 capture groups
# (.)(.)\g{2}\g{1}; This pattern is safer. Can't be confused w/ digits
如果我的语法与反向引用不正确,请告诉我,因为我不能 100% 确定反向引用的语法是如何工作的。
【问题讨论】:
标签: perl