在Java中,正则表达式中的\number
是什么意思呢?
假设我有一个类似\1
或者\2
的字符串,它代表什么意思,如何使用呢?举个例子会更加清晰。
谢谢!
<([A-Z][A-Z0-9]*)\b[^>]*>.*?</\1>
该正则表达式仅包含一对括号,捕获由
[A-Z][A-Z0-9]*
匹配的字符串。回溯引用 \1
(反斜线一) 引用第一个捕获组。 \1
匹配与第一个捕获组完全相同的文本。前面的/
是一个字面字符,它只是我们试图匹配的关闭HTML标记中的正斜杠。
详情和示例请参见:
http://www.regular-expressions.info/backref.html
<(GROUP_1)>(GROUP_2)</\2>
。这是否意味着\2
将在</....>
中放置与GROUP_2
中定义的相同的正则表达式? - Mohammad Najar\
通常用于构建匹配的开头。
它也代表一个转义字符。
\number
意味着你太懒了,不愿意进行一个简单的谷歌搜索,查找“正则表达式反斜杠数字”的含义。希望这可以帮到你。 - tenubPattern.compile("((xyz)*)\1")
这样的话,你说得对。但我们都猜测代码看起来更像是Pattern.compile("((xyz)*)\\1")
或类似的东西。 - ajb