一次又一次我看到代码中使用了$ 1和$ 2。这是什么意思?你能举个例子吗?
回答
创建正则表达式时,您可以选择捕获部分匹配并将它们保存为占位符。它们的编号从$1
开始。
例如:
/A(\d+)B(\d+)C/
这将捕获从A90B3C
值90
和3
。如果需要分组但不想捕获它们,请使用(?:...)
版本,而不是(...)
。
数字从括号开始的顺序从左到右。这意味着:
/A((\d+)B)(\d+)C/
针对相同的字符串匹配将捕获90B
,90
和3
。
谢谢。如果时间允许,我会接受这个答案。 – david 2011-05-12 18:50:52
所以应该这样工作:A(\ d +)B($ 1)C – 0x499602D2 2011-06-05 13:03:23
它在Perl中,但我不认为Ruby支持这种回溯。 – tadman 2011-06-06 14:30:58
这是特别的。用于Replacement String Syntax(即格式字符串)适用于查找案例/案例折叠&替代。要引用捕获,请使用$ n,其中n是捕获寄存器编号。使用$ 0意味着整个比赛。示例:Find: (<a.*?>)(.*?)(</a>) Replace: $1\u$2\e$3
- 1. 正则表达式“^ [Ee] [Pp] {1,} [\ d1-9] {7,9}”是什么意思?
- 2. 返回-1是什么意思在正则表达式搜索
- 3. 是什么正则表达式的意思是,为什么
- 4. 正则表达式中的正斜杠是什么意思
- 5. JavaScript正则表达式中的正斜杠是什么意思?
- 6. 正则表达式preg php中的[^>]是什么意思?
- 7. .NET正则表达式中的(?i)是什么意思?
- 8. 正则表达式中的`?i`和`?-i`是什么意思?
- 9. 正则表达式中的IJ - 这是什么意思?
- 10. 正则表达式中的^是什么意思?
- 11. php中的这个正则表达式是什么意思?
- 12. 正则表达式(perl)中的[\ 0-9]是什么意思?
- 13. 正则表达式中的(?m:\ s *)是什么意思?
- 14. 在java中的正则表达式_是什么意思
- 15. 是什么正则表达式的意思是: '/ &\w; /'
- 16. 这是什么正则表达式的意思是“[^>] *
- 17. 在正则表达式模式之前,'r'是什么意思?
- 18. 正则表达式这是什么正规表达式S#的意思^ */##小号
- 19. 这是什么意思正则表达式中整理/ I
- 20. 在正则表达式中,\ w *是什么意思?
- 21. 在Python正则表达式中,“?:”是什么意思?
- 22. 在正则表达式中,'懒'和'贪'是什么意思?
- 23. 在正则表达式中,^和$是什么意思?
- 24. 在正则表达式中,?= ^是什么意思?
- 25. 正则表达式匹配模式“\\ [。* \\]”是什么意思?
- 26. 这个正则表达式模式是什么意思?
- 27. 这个PHP正则表达式模式是什么意思?
- 28. python正则表达式 - 什么 - (短划线)的意思是
- 29. 什么是(?i)\\。正则表达式的意思
- 30. 正则表达式的o修饰符是什么意思?
这可能对您有所帮助:[分组和反向引用](http://www.regular-expressions.info/brackets.html) – 2011-05-12 18:47:17