Legend

Class
Struct
Enum
Interface
Delegate
Constructor
Method
Property
Event
Field

Method: Generex<T, TCombinedResult> AndExact<TOtherResult, TOtherGenerex, TOtherGenerexMatch, TCombinedResult>(GenerexWithResultBase<T, TOtherResult, TOtherGenerex, TOtherGenerexMatch>, Func<TResult, TOtherGenerexMatch, TCombinedResult>)

  • Declared in: RT.Generexes.Generex<T, TResult>

Declaration

public Generex<T, TCombinedResult> AndExact<TOtherResult, TOtherGenerex, TOtherGenerexMatch, TCombinedResult>(
    GenerexWithResultBase<T, TOtherResult, TOtherGenerex, TOtherGenerexMatch> other,
    Func<TResult, TOtherGenerexMatch, TCombinedResult> selector
)

Summary

Returns a regular expression that only matches if the subarray matched by this regular expression also fully matches the specified other regular expression, and if so, combines the first match’s result object with the second match using a specified selector.

Generic type parameters

TOtherResult The type of the result object associated with each match of other.
TOtherGenerex
  • Must derive from: RT.Generexes.GenerexWithResultBase<T, TOtherResult, TOtherGenerex, TOtherGenerexMatch>.
The type of the other regular expression. (This is either Generex<T, TResult> or Stringerex<TResult>.)
TOtherGenerexMatch
  • Must derive from: RT.Generexes.GenerexMatch<T, TOtherResult>.
The type of the result object associated with the other regular expression. (This is either GenerexMatch<T, TResult> or StringerexMatch<TResult>.)
TCombinedResult The type of the combined result object returned by selector.

Parameters

GenerexWithResultBase<T, TOtherResult, TOtherGenerex, TOtherGenerexMatch>other A regular expression which must match the subarray matched by this regular expression.
Func<TResult, TOtherGenerexMatch, TCombinedResult>selector A selector function that combines the result object associated with the match of this regular expression, and the match of other, into a new result object.

Remarks

It is important to note that a.And(b) is not the same as b.And(a). See GenerexBase<T, TMatch, TGenerex, TGenerexMatch>.And<TOtherGenerex, TOtherGenerexMatch>(GenerexNoResultBase<T, TOtherGenerex, TOtherGenerexMatch>) for an example.

The value of the GenerexMatch<T>.Index property of the match object passed into selector refers to the index within the subarray, not the index within the original input sequence.