Język

RegexRunner Klasa

Definicja

Klasa bazowa na potrzeby rozszerzalności wyrażeń regularnych wygenerowanych przez źródło (i starej rozszerzalności CompileToAssembly). Nie ma być używany przez nic innego.

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

public ref class RegexRunner abstract
public abstract class RegexRunner
type RegexRunner = class
Public MustInherit Class RegexRunner
Dziedziczenie
RegexRunner

Uwagi

Udostępnia kod sterownika, który wywołuje metodę Scan podklasy na potrzeby skanowania lub bezpośredniego wykonywania. Ponadto utrzymuje alokację pamięci dla stosu wycofywania, stosu grupowania i stosu przeszukiwania longjump oraz udostępnia metody wypychania nowych wyników dopasowania podrzędnego do (lub usuwania wyników wycofanych z) wystąpienia Dopasowania.

Konstruktory

Nazwa Opis
RegexRunner()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Inicjuje nowe wystąpienie klasy RegexRunner.

Pola

Nazwa Opis
runcrawl

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Stos przeszukiwania

runcrawlpos

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Położenie stosu przeszukiwania

runmatch

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Obiekt result

runregex

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Obiekt regex

runstack

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Stos narzędzi

runstackpos

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Położenie stosu narzędzi

runtext

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Tekst do wyszukania. Może mieć wartość null, jeśli dane wejściowe zostały podane jako zakres.

runtextbeg

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Indeks pierwszego znaku do wyszukania

runtextend

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Indeksuj ostatni znak, aby wyszukać

runtextpos

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Bieżące położenie w tekście

runtextstart

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Indeks znaku początkowego dla wyszukiwania.

runtrack

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Stos wycofywania

runtrackcount

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Liczba stanów, które mogą wykonywać wycofywanie

runtrackpos

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Położenie stosu wycofywania

Metody

Nazwa Opis
Capture(Int32, Int32, Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywoływana przez języka Go() w celu przechwycenia podwyrażenia. Należy pamiętać, że liczba użytych w tym miejscu została już zamapowana na indeks niesparzysty (przez generator kodu RegexWriter).

CharInClass(Char, String)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Określa, czy określony znak pasuje do danego ciągu klasy znaków.

CharInSet(Char, String, String)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Przestarzałe.

Określa, czy określony znak znajduje się w danym zestawie znaków i kategorii.

CheckTimeout()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Sprawdza, czy operacja przekroczyła limit czasu, i zgłasza RegexMatchTimeoutException , czy została ona przekroczona.

Crawl(Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Zapisywanie liczby na stosie wyrejestrowywania longjump

Crawlpos()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Pobieranie wysokości stosu

DoubleCrawl()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Zwiększa rozmiar stosu wyrejestrowywania longjump.

DoubleStack()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywoływana przez implementację języka Go() w celu zwiększenia rozmiaru stosu grupowania.

DoubleTrack()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywoływana przez implementację języka Go() w celu zwiększenia rozmiaru stosu wycofywania.

EnsureStorage()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywoływana przez implementację języka Go() w celu zwiększenia rozmiaru magazynu

Equals(Object)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
FindFirstChar()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Obowiązkiem FindFirstChar() jest postęp runtextpos, dopóki nie będzie na następnej pozycji, która jest kandydatem na początek udanego meczu.

GetHashCode()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
Go()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Obowiązkiem języka Go() jest uruchomienie wyrażenia regularnego w elementach runtextpos i wywołanie funkcji Capture() na wszystkich przechwyconych podwyrażeniach, a następnie pozostawienie elementów runtextpos na pozycji końcowej. Powinien pozostawić element runtextpos, w którym został uruchomiony, jeśli nie było dopasowania.

InitTrackCount()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Element InitTrackCount musi zainicjować pole runtrackcount; służy do poznania, jak duże muszą być początkowe tablice runtrack i runstack.

IsBoundary(Int32, Int32, Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywoływana przez implementację języka Go(), aby zdecydować, czy wiersze w określonym indeksie są granicą, czy nie. Nie warto emitować kodu wbudowanego dla tej logiki.

IsECMABoundary(Int32, Int32, Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Określa, czy pozycja w określonym indeksie jest granicą słowa zgodną z ECMA.

IsMatched(Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywołaj, aby uruchomićmatch, aby obejść problemy z widocznością

MatchIndex(Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywołaj, aby uruchomićmatch, aby obejść problemy z widocznością

MatchLength(Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywołaj, aby uruchomićmatch, aby obejść problemy z widocznością

MemberwiseClone()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
Popcrawl()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Usuwanie liczby ze stosu wyrejestrowywania longjump

Scan(ReadOnlySpan<Char>)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Używany przez Regex obiekt do skanowania danych wejściowych text w poszukiwaniu następnego dopasowania.

Scan(Regex, String, Int32, Int32, Int32, Int32, Boolean, TimeSpan)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Przestarzałe.

Treść tej metody jest przechowywana tylko dlatego, że jest to chroniony element członkowski, który może być wywoływany przez kogoś spoza zestawu.

Scan(Regex, String, Int32, Int32, Int32, Int32, Boolean)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Przestarzałe.

Używany przez Regex obiekt do skanowania danych wejściowych text.

ToString()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TransferCapture(Int32, Int32, Int32, Int32)

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywoływana przez języka Go() w celu przechwycenia podwyrażenia. Należy pamiętać, że liczba użytych w tym miejscu została już zamapowana na indeks niesparzysty (przez generator kodu RegexWriter).

Uncapture()

Ten interfejs API obsługuje infrastrukturę produktu i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu.

Wywołana przez, Go() aby przywrócić ostatnie przechwycenie.

Dotyczy