gpt4 book ai didi

C# 正则表达式 : Get sub-capture?

转载 作者:行者123 更新时间:2023-11-30 15:09:53 25 4
gpt4 key购买 nike

我有一个正则表达式...

internal static readonly Regex _parseSelector = new Regex(@"
(?<tag>" + _namePattern + @")?
(?:\.(?<class>" + _namePattern + @"))*
(?:\#(?<id>" + _namePattern + @"))*
(?<attr>\[\s*
(?<name>" + _namePattern + @")\s*
(?:
(?<op>[|*~$!^%<>]?=|[<>])\s*
(?<quote>['""]?)
(?<value>.*?)
(?<!\\)\k<quote>\s*
)?
\])*
(?::(?<pseudo>" + _namePattern + @"))*
", RegexOptions.IgnorePatternWhitespace);

为此我抓取匹配对象...

var m = _parseSelector.Match("tag.class1.class2#id[attr1=val1][attr2=\"val2\"][attr3]:pseudo");

现在有没有办法做类似于 m.Group["attr"]["name"] 的事情?或者以某种方式让组进入 attr 组?

最佳答案

组名没有嵌套在正则表达式中——它是一个平面结构。你可以只使用这个:

m.Group["name"]

关于C# 正则表达式 : Get sub-capture?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3851349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com