本文整理汇总了C#中System.Text.RegularExpressions.RegexNode.AddChild方法的典型用法代码示例。如果您正苦于以下问题:C# RegexNode.AddChild方法的具体用法?C# RegexNode.AddChild怎么用?C# RegexNode.AddChild使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Text.RegularExpressions.RegexNode
的用法示例。
在下文中一共展示了RegexNode.AddChild方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PopGroup
/*
* Remember the pushed state (in response to a ')')
*/
internal void PopGroup()
{
_concatenation = _stack;
_alternation = _concatenation._next;
_group = _alternation._next;
_stack = _group._next;
// The first () inside a Testgroup group goes directly to the group
if (_group.Type() == RegexNode.Testgroup && _group.ChildCount() == 0)
{
if (_unit == null)
throw MakeException(SR.IllegalCondition);
_group.AddChild(_unit);
_unit = null;
}
}
示例2: MakeQuantifier
internal RegexNode MakeQuantifier(bool lazy, int min, int max) {
RegexNode result;
if (min == 0 && max == 0)
return new RegexNode(RegexNode.Empty, _options);
if (min == 1 && max == 1)
return this;
switch (_type) {
case RegexNode.One:
case RegexNode.Notone:
case RegexNode.Set:
MakeRep(lazy ? RegexNode.Onelazy : RegexNode.Oneloop, min, max);
return this;
default:
result = new RegexNode(lazy ? RegexNode.Lazyloop : RegexNode.Loop, _options, min, max);
result.AddChild(this);
return result;
}
}
示例3: MakeQuantifier
internal RegexNode MakeQuantifier(bool lazy, int min, int max)
{
if ((min == 0) && (max == 0))
{
return new RegexNode(0x17, this._options);
}
if ((min == 1) && (max == 1))
{
return this;
}
switch (this._type)
{
case 9:
case 10:
case 11:
this.MakeRep(lazy ? 6 : 3, min, max);
return this;
}
RegexNode node = new RegexNode(lazy ? 0x1b : 0x1a, this._options, min, max);
node.AddChild(this);
return node;
}