2004-12-05 20:22:33 +00:00
|
|
|
/*
|
|
|
|
*******************************************************************************
|
2006-09-04 17:15:14 +00:00
|
|
|
* Copyright (C) 2003-2006, International Business Machines
|
2004-12-05 20:22:33 +00:00
|
|
|
* Corporation and others. All Rights Reserved.
|
|
|
|
*******************************************************************************
|
|
|
|
* file name: regexc.cpp
|
|
|
|
* description: The purpose of this function is to separate the codepage
|
|
|
|
* conversion from the rest of the uregex_ API. This can removes any
|
|
|
|
* dependency on codepage conversion, which reduces the overhead of
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "unicode/uregex.h"
|
|
|
|
#include "unicode/unistr.h"
|
|
|
|
|
2006-09-04 17:15:14 +00:00
|
|
|
U_NAMESPACE_USE
|
|
|
|
|
2004-12-05 20:22:33 +00:00
|
|
|
//----------------------------------------------------------------------------------------
|
|
|
|
//
|
|
|
|
// uregex_openC
|
|
|
|
//
|
|
|
|
//----------------------------------------------------------------------------------------
|
2005-07-07 07:55:39 +00:00
|
|
|
#if !UCONFIG_NO_CONVERSION && !UCONFIG_NO_REGULAR_EXPRESSIONS
|
|
|
|
|
2004-12-05 20:22:33 +00:00
|
|
|
U_CAPI URegularExpression * U_EXPORT2
|
|
|
|
uregex_openC( const char *pattern,
|
|
|
|
uint32_t flags,
|
|
|
|
UParseError *pe,
|
|
|
|
UErrorCode *status) {
|
|
|
|
if (U_FAILURE(*status)) {
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
if (pattern == NULL) {
|
|
|
|
*status = U_ILLEGAL_ARGUMENT_ERROR;
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
|
|
|
|
UnicodeString patString(pattern);
|
2006-09-04 17:15:14 +00:00
|
|
|
return uregex_open(patString.getBuffer(), patString.length(), flags, pe, status);
|
2004-12-05 20:22:33 +00:00
|
|
|
}
|
|
|
|
#endif
|