code: func newExprIterFromGroup(g *Group, p *Pattern) *ExprIter {
  	for elem := g.GetFirstElem(p.Operand); elem != nil; elem = elem.Next() {
  		expr := elem.Value.(*GroupExpr)
  		if !p.Operand.Match(GetOperand(expr.ExprNode)) {
  			return nil
  		}
  		iter := newExprIterFromGroupExpr(expr, p)
  		if iter != nil {
  			iter.Group, iter.Element = g, elem
  			return iter
  		}
  	}
  	return nil
  }
docs: // newExprIterFromGroup creates the iterator on the Group.