c# - 我可以将一个正则表达式组的值分配给另一个正则表达式组吗?

标签 c# regex

是否可以将正则表达式中一组的值复制到另一组中?意思是,我有一个文本行

   errID   name_of_error: description bla bla

我使用这个 RE 来保存该行的所有部分

   ^(?'code'[\w\d]{5}) {3}(?'name'[\w\d]+?(?=:)): (?<= )(?'desc'.+?)(?=$)

我想要的是我的正则表达式中包含“code”值的附加组,例如

   code -> errID
   newgroup-> errID
   name-> name_of_error
   desc -> description bla bla

可行吗?

编辑:我正在使用 C#

最佳答案

我不知道您使用的是什么语言,特别是命名组的语法,但我认为您可以使用:

^(?'newgroup'(?'code'[\w\d]{5})) {3}(?'name'[\w\d]+?(?=:)): (?<= )(?'desc'.+?)(?=$)

此外,[\w\d] 可以简化为 \w,则正则表达式变为:

^(?'newgroup'(?'code'\w{5})) {3}(?'name'\w+?): +(?'desc'.+?)$

关于c# - 我可以将一个正则表达式组的值分配给另一个正则表达式组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9805068/

相关文章:

c# - 在 Entity Framework Core 的不同方法中使用相同的事务

regex - PostgreSQL:正则表达式用大括号替换第一级方括号

regex - Textwrangler grep regexpression 引用?

regex - URL正则表达式组捕获

c# - 使用泛型方法时如何正确约束相关类类型?

c# - 持久化 mcr.microsoft.com/mssql/server :2019-latest using Docker volumes 的容器时权限被拒绝

c# - sql中如何获取 "TryCast"数据

c# - 找不到导入的项目 "C:\Microsoft.CSharp.targets"

python - 使用正则表达式混合字符串

javascript - JavaScript 正则表达式中 'y' 粘性模式修饰符的用途是什么?