是否可以在正则表达式中将组的值复制到另一个组中?意思是,我有一个文字行
errID name_of_error: description bla bla
我用这个RE来保存这一行的所有部分
^(?'code'[\w\d]{5}) {3}(?'name'[\w\d]+?(?=:)): (?<= )(?'desc'.+?)(?=$)
我所拥有的是我的正则表达式中包含“代码”值的其他组,例如
code -> errID
newgroup-> errID
name-> name_of_error
desc -> description bla bla
可行吗?
编辑:我正在使用C#答案 0 :(得分:3)
我不知道您使用的语言,特别是对于命名组的语法,但我认为您可以使用:
^(?'newgroup'(?'code'[\w\d]{5})) {3}(?'name'[\w\d]+?(?=:)): (?<= )(?'desc'.+?)(?=$)
此外[\w\d]
可以简化为\w
,然后正则表达式变为:
^(?'newgroup'(?'code'\w{5})) {3}(?'name'\w+?): +(?'desc'.+?)$