roman: supongo que conoces la unidad ConvUtils.pas, donde se puede crear conversiones entre unidades de medida, pesos, etc. Pues
juraría que he visto la misma filosofía con expresiones regulares en Delphi 6 hace un par de años, lo encontré de pasada y no entendí la filosofía de uso, así que lo descarté.
Usando el Grep Search de GExpert he obtenido algunas cosas:
En BDS 2006 en la unidad Nsapi.pas, solo he podido encontrar esto:
Código Delphi
[-]
const
NON_SXP = -1;
INVALID_SXP = -2;
VALID_SXP = 1;
NON_WILDPAT = NON_SXP;
INVALID_WILDPAT = INVALID_SXP;
VALID_WILDPAT = VALID_SXP;
NON_REGEXP = NON_SXP;
INVALID_REGEXP = INVALID_SXP;
VALID_REGEXP = VALID_SXP;
function shexp_valid(exp: PChar): Integer; cdecl;
function shexp_match(str, exp: PChar): Integer; cdecl;
function shexp_cmp(str, exp: PChar): Integer; cdecl;
function shexp_casecmp(str, exp: PChar): Integer; cdecl;
****************************
function shexp_valid; external nshttp name 'shexp_valid';
function shexp_match; external nshttp name 'shexp_match';
function shexp_cmp; external nshttp name 'shexp_cmp';
function shexp_casecmp; external nshttp name 'shexp_casecmp';
****************************
En la unidad ToolsApi.pas he encontrado esto, aunque el prefijo "IOTA" me deja KO.
Código Delphi
[-]
IOTASearchOptions = interface(IUnknown)
['{D1766F8B-D915-11D2-A8C1-00C04FA32F53}']
function GetCaseSensitive: Boolean;
function GetDirection: TSearchDirection;
function GetFromCursor: Boolean;
function GetRegularExpression: Boolean;
function GetSearchText: string;
function GetWholeFile: Boolean;
function GetWordBoundary: Boolean;
procedure SetCaseSensitive(Value: Boolean);
procedure SetDirection(Value: TSearchDirection);
procedure SetFromCursor(Value: Boolean);
procedure SetRegularExpression(Value: Boolean);
procedure SetSearchText(const Value: string);
procedure SetWholeFile(Value: Boolean);
procedure SetWordBoundary(Value: Boolean);
property CaseSensitive: Boolean read GetCaseSensitive write SetCaseSensitive;
property Direction: TSearchDirection read GetDirection write SetDirection;
property FromCursor: Boolean read GetFromCursor write SetFromCursor;
property RegularExpression: Boolean read GetRegularExpression write SetRegularExpression;
property SearchText: string read GetSearchText write SetSearchText;
property WholeFile: Boolean read GetWholeFile write SetWholeFile;
property WordBoundary: Boolean read GetWordBoundary write SetWordBoundary;
end;
En dotNet\rtl\Borland.Vcl.Masks.pas tambien he encontrado cosas, pero en Delphi 6 no estará, que precisamente es donde recuerdo haberlo visto.
¿Podrías realizar algunas búsquedas en Delphi 6 para comprobar si existen lo que he encontrado? Gracias.
Saludos