メインページ | アルファベット順一覧 | 構成 | ファイル一覧 | 構成メンバ | ファイルメンバ | 関連ページ

dkcRegex.h

説明を見る。
00001 
00013 #ifndef dkutil_c_Regex__h
00014 #define dkutil_c_Regex__h
00015 
00016 
00017 
00018 #include "dkcStream.h"
00019 #include "dkcOSIndependent.h"
00020 
00021 typedef struct dkc_Replace{
00022     DKC_STREAM *mStream;
00023 }DKC_REPLACE;
00024 
00025 typedef wchar_t DKC_UNICODE;
00026 
00027 DKC_EXTERN DKC_REPLACE *WINAPI dkcAllocReplace();
00028 
00029 DKC_EXTERN int WINAPI dkcFreeReplace(DKC_REPLACE **);
00030 
00031 DKC_EXTERN int WINAPI dkcReplaceRun(     const BYTE *src,size_t srcsize,
00032                                                                          const BYTE *target_data,size_t target_data_size,
00033                                                                          const BYTE *replace_data,size_t replace_data_size
00034                                                             );
00035 
00036 
00037 
00039 enum edkcRegToken
00040 {
00042     R_Char,
00044     R_Any, 
00046     R_Lcl,
00048     R_Rcl,
00050     R_Ncl,
00052     R_Range,
00054     R_Lbr,
00056     R_Rbr,
00058     R_Bar,
00060     R_Star,
00062     R_Plus,
00064     R_Quest,
00066     R_End,
00067 };
00068 
00069 
00071 enum edkcRegType
00072 {
00073     N_Char,     // 普通の文字 (ch)
00074     N_Class,    // [...] など (cls)
00075     N_Concat,   // 連接       (left, right)
00076     N_Or,       // |          (left, right)
00077     N_Closure,  // *          (left)
00078     N_Closure1, // +          (left)
00079     N_01,       // ?          (left)
00080     N_Empty     // 空         (--)
00081 };
00082 
00084 typedef struct dkcRegularExpression{
00085     void *re_;
00086     BOOL caseS_;
00087     BOOL down_;
00088 }DKC_Regular_EXPRESSION,DKC_REX,DKC_REGEX;
00089 
00095 DKC_EXTERN DKC_REGEX *WINAPI dkcAllocRegex(const DKC_UNICODE* key, BOOL caseS, BOOL down);
00096 
00097 DKC_EXTERN int WINAPI dkcFreeRegex(DKC_REGEX **);
00098 
00099 DKC_EXTERN BOOL WINAPI dkcRegexSearch(DKC_REGEX *p,const DKC_UNICODE* str, ULONG len, ULONG stt,ULONG* mbg, ULONG* med);
00100 
00101 
00116 DKC_EXTERN BOOL WINAPI dkcRegularExpressionSearch( const DKC_UNICODE* key, BOOL caseS, BOOL down,const DKC_UNICODE* str, ULONG len, ULONG stt,ULONG* mbg, ULONG* med );
00127 DKC_EXTERN BOOL WINAPI dkcRegularExpressionMatch( const DKC_UNICODE* pat, const DKC_UNICODE* str, BOOL caseS );
00128 
00129 
00130 #endif //end of include once

dkutil_cに対してSat Sep 10 09:23:56 2005に生成されました。  doxygen 1.4.4