You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.5 KiB
43 lines
1.5 KiB
4 months ago
|
// © 2016 and later: Unicode, Inc. and others.
|
||
|
// License & terms of use: http://www.unicode.org/copyright.html
|
||
|
/*
|
||
|
*******************************************************************************
|
||
|
* Copyright (C) 2003-2006, International Business Machines
|
||
|
* 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"
|
||
|
|
||
|
U_NAMESPACE_USE
|
||
|
|
||
|
//----------------------------------------------------------------------------------------
|
||
|
//
|
||
|
// uregex_openC
|
||
|
//
|
||
|
//----------------------------------------------------------------------------------------
|
||
|
#if !UCONFIG_NO_CONVERSION && !UCONFIG_NO_REGULAR_EXPRESSIONS
|
||
|
|
||
|
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);
|
||
|
return uregex_open(patString.getBuffer(), patString.length(), flags, pe, status);
|
||
|
}
|
||
|
#endif
|