System.RegularExpressions.TRegEx
Delphi
TRegEx = record
private
FOptions: TRegExOptions;
FMatchEvaluator: TMatchEvaluator;
FNotifier: IInterface;
FRegEx: TPerlRegEx;
procedure InternalOnReplace(Sender: TObject; var ReplaceWith: string);
{$IFNDEF PCRE16}
function UnicodeIndexToUTF8(const S: string; AIndex: Integer): Integer;
{$ENDIF}
public
constructor Create(const Pattern: string; Options: TRegExOptions = [roNotEmpty]);
function IsMatch(const Input: string): Boolean; overload;
function IsMatch(const Input: string; StartPos: Integer): Boolean; overload;
class function IsMatch(const Input, Pattern: string): Boolean;overload; static;
class function IsMatch(const Input, Pattern: string; Options: TRegExOptions): Boolean; overload; static;
class function Escape(const Str: string; UseWildCards: Boolean = False): string; static;
function Match(const Input: string): TMatch; overload;
function Match(const Input: string; StartPos: Integer): TMatch; overload;
function Match(const Input: string; StartPos, Length: Integer): TMatch; overload;
class function Match(const Input, Pattern: string): TMatch; overload; static;
class function Match(const Input, Pattern: string; Options: TRegExOptions): TMatch; overload; static;
function Matches(const Input: string): TMatchCollection; overload;
function Matches(const Input: string; StartPos: Integer): TMatchCollection; overload;
class function Matches(const Input, Pattern: string): TMatchCollection; overload; static;
class function Matches(const Input, Pattern: string; Options: TRegExOptions): TMatchCollection; overload; static;
function Replace(const Input, Replacement: string): string; overload;
function Replace(const Input: string; Evaluator: TMatchEvaluator): string; overload;
function Replace(const Input, Replacement: string; Count: Integer): string; overload;
function Replace(const Input: string; Evaluator: TMatchEvaluator; Count: Integer): string; overload;
class function Replace(const Input, Pattern, Replacement: string): string; overload; static;
class function Replace(const Input, Pattern: string; Evaluator: TMatchEvaluator): string; overload; static;
class function Replace(const Input, Pattern, Replacement: string; Options: TRegExOptions): string; overload; static;
class function Replace(const Input, Pattern: string; Evaluator: TMatchEvaluator; Options: TRegExOptions): string; overload; static;
function Split(const Input: string): TArray<string>; overload; inline;
function Split(const Input: string; Count: Integer): TArray<string>; overload; inline;
function Split(const Input: string; Count, StartPos: Integer): TArray<string>; overload;
class function Split(const Input, Pattern: string): TArray<string>; overload; static;
class function Split(const Input, Pattern: string; Options: TRegExOptions): TArray<string>; overload; static;
end;
C++
struct DECLSPEC_DRECORD TRegEx
{
private:
TRegExOptions FOptions;
TMatchEvaluator FMatchEvaluator;
System::_di_IInterface FNotifier;
System::Regularexpressionscore::TPerlRegEx* FRegEx;
void __fastcall InternalOnReplace(System::TObject* Sender, System::UnicodeString &ReplaceWith);
public:
__fastcall TRegEx(const System::UnicodeString Pattern, TRegExOptions Options);
bool __fastcall IsMatch(const System::UnicodeString Input)/* overload */;
bool __fastcall IsMatch(const System::UnicodeString Input, int StartPos)/* overload */;
static bool __fastcall IsMatch(const System::UnicodeString Input, const System::UnicodeString Pattern)/* overload */;
static bool __fastcall IsMatch(const System::UnicodeString Input, const System::UnicodeString Pattern, TRegExOptions Options)/* overload */;
static System::UnicodeString __fastcall Escape(const System::UnicodeString Str, bool UseWildCards = false);
TMatch __fastcall Match(const System::UnicodeString Input)/* overload */;
TMatch __fastcall Match(const System::UnicodeString Input, int StartPos)/* overload */;
TMatch __fastcall Match(const System::UnicodeString Input, int StartPos, int Length)/* overload */;
static TMatch __fastcall Match(const System::UnicodeString Input, const System::UnicodeString Pattern)/* overload */;
static TMatch __fastcall Match(const System::UnicodeString Input, const System::UnicodeString Pattern, TRegExOptions Options)/* overload */;
TMatchCollection __fastcall Matches(const System::UnicodeString Input)/* overload */;
TMatchCollection __fastcall Matches(const System::UnicodeString Input, int StartPos)/* overload */;
static TMatchCollection __fastcall Matches(const System::UnicodeString Input, const System::UnicodeString Pattern)/* overload */;
static TMatchCollection __fastcall Matches(const System::UnicodeString Input, const System::UnicodeString Pattern, TRegExOptions Options)/* overload */;
System::UnicodeString __fastcall Replace(const System::UnicodeString Input, const System::UnicodeString Replacement)/* overload */;
System::UnicodeString __fastcall Replace(const System::UnicodeString Input, TMatchEvaluator Evaluator)/* overload */;
System::UnicodeString __fastcall Replace(const System::UnicodeString Input, const System::UnicodeString Replacement, int Count)/* overload */;
System::UnicodeString __fastcall Replace(const System::UnicodeString Input, TMatchEvaluator Evaluator, int Count)/* overload */;
static System::UnicodeString __fastcall Replace(const System::UnicodeString Input, const System::UnicodeString Pattern, const System::UnicodeString Replacement)/* overload */;
static System::UnicodeString __fastcall Replace(const System::UnicodeString Input, const System::UnicodeString Pattern, TMatchEvaluator Evaluator)/* overload */;
static System::UnicodeString __fastcall Replace(const System::UnicodeString Input, const System::UnicodeString Pattern, const System::UnicodeString Replacement, TRegExOptions Options)/* overload */;
static System::UnicodeString __fastcall Replace(const System::UnicodeString Input, const System::UnicodeString Pattern, TMatchEvaluator Evaluator, TRegExOptions Options)/* overload */;
#ifndef _WIN64
System::DynamicArray<System::UnicodeString> __fastcall Split(const System::UnicodeString Input)/* overload */;
System::DynamicArray<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, int Count)/* overload */;
System::DynamicArray<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, int Count, int StartPos)/* overload */;
static System::DynamicArray<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, const System::UnicodeString Pattern)/* overload */;
static System::DynamicArray<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, const System::UnicodeString Pattern, TRegExOptions Options)/* overload */;
#else /* _WIN64 */
System::TArray__1<System::UnicodeString> __fastcall Split(const System::UnicodeString Input)/* overload */;
System::TArray__1<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, int Count)/* overload */;
System::TArray__1<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, int Count, int StartPos)/* overload */;
static System::TArray__1<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, const System::UnicodeString Pattern)/* overload */;
static System::TArray__1<System::UnicodeString> __fastcall Split(const System::UnicodeString Input, const System::UnicodeString Pattern, TRegExOptions Options)/* overload */;
#endif /* _WIN64 */
TRegEx() {}
};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
record struct |
public | System.RegularExpressions.pas System.RegularExpressions.hpp |
System.RegularExpressions | System.RegularExpressions |
説明
正規表現を処理するためのレコード。
TRegEx は TPerlRegEx 関数を呼び出し、これはオープンソース PCRE ライブラリとのインターフェイスとなります。