我学习regexp并且我想问,我能在同一个正则表达式中保存价值吗? 我试图将html拆分为标签。
像:
/<[a-zA-Z]*>.*<\/[a-zA-Z]*>/gi
-------- --------
val a val b
我需要一个== b,那么有什么方法可以保存“val a”而使用名为“val b”的regexp?
答案 0 :(得分:2)
首先,强制性警告you cannot parse HTML with regex。
话虽这么说,您可以使用捕获组并使用\#
在正则表达式中引用它,其中#
是捕获组的编号(从1开始)。例如:
/<([a-zA-Z]*)>.*<\/\1>/gi
然而,再次,您不应该使用此正则表达式,因为它已被破坏。有更好的方法来处理HTML,尤其是在Javascript中。
答案 1 :(得分:1)
使用\1
,\2
,...它将引用匹配的群组
/(\d)x(\1)/.test("1x1") // true
/(\d)x(\1)/.test("1x2") // false