From 73d60963c889dc82d6fdd53c08e9f2e4a21dca9d Mon Sep 17 00:00:00 2001 From: hyung-hwan Date: Sun, 12 Jun 2022 14:47:18 +0000 Subject: [PATCH] added some more string functions --- hio/lib/hio-utl.h | 50 ++++++++++++++++++++++++++++++++++++++++---- hio/lib/hio-utl.h.m4 | 50 ++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 92 insertions(+), 8 deletions(-) diff --git a/hio/lib/hio-utl.h b/hio/lib/hio-utl.h index 71c3210..8d8d4ca 100644 --- a/hio/lib/hio-utl.h +++ b/hio/lib/hio-utl.h @@ -543,25 +543,25 @@ HIO_EXPORT const hio_uch_t* hio_find_ucstr_word_in_ucstr ( int ignorecase ); -HIO_EXPORT hio_uch_t* hio_find_uchar_in_chars ( +HIO_EXPORT hio_uch_t* hio_find_uchar_in_uchars ( const hio_uch_t* ptr, hio_oow_t len, hio_uch_t c ); -HIO_EXPORT hio_bch_t* hio_find_bchar_in_chars ( +HIO_EXPORT hio_bch_t* hio_find_bchar_in_bchars ( const hio_bch_t* ptr, hio_oow_t len, hio_bch_t c ); -HIO_EXPORT hio_uch_t* hio_rfind_uchar_in_chars ( +HIO_EXPORT hio_uch_t* hio_rfind_uchar_in_uchars ( const hio_uch_t* ptr, hio_oow_t len, hio_uch_t c ); -HIO_EXPORT hio_bch_t* hio_rfind_bchar_in_chars ( +HIO_EXPORT hio_bch_t* hio_rfind_bchar_in_bchars ( const hio_bch_t* ptr, hio_oow_t len, hio_bch_t c @@ -577,6 +577,48 @@ HIO_EXPORT hio_bch_t* hio_find_bchar_in_bcstr ( hio_bch_t c ); +HIO_EXPORT hio_uch_t* hio_rfind_uchar_in_ucstr ( + const hio_uch_t* ptr, + hio_uch_t c +); + +HIO_EXPORT hio_bch_t* hio_rfind_bchar_in_bcstr ( + const hio_bch_t* ptr, + hio_bch_t c +); + +HIO_EXPORT hio_uch_t* hio_find_uchars_in_uchars ( + const hio_uch_t* str, + hio_oow_t strsz, + const hio_uch_t* sub, + hio_oow_t subsz, + int inorecase +); + +HIO_EXPORT hio_bch_t* hio_find_bchars_in_bchars ( + const hio_bch_t* str, + hio_oow_t strsz, + const hio_bch_t* sub, + hio_oow_t subsz, + int inorecase +); + +HIO_EXPORT hio_uch_t* hio_rfind_uchars_in_uchars ( + const hio_uch_t* str, + hio_oow_t strsz, + const hio_uch_t* sub, + hio_oow_t subsz, + int inorecase +); + +HIO_EXPORT hio_bch_t* hio_rfind_bchars_in_bchars ( + const hio_bch_t* str, + hio_oow_t strsz, + const hio_bch_t* sub, + hio_oow_t subsz, + int inorecase +); + /* ------------------------------------ */ HIO_EXPORT hio_oow_t hio_rotate_uchars ( diff --git a/hio/lib/hio-utl.h.m4 b/hio/lib/hio-utl.h.m4 index a6ceadc..b410a95 100644 --- a/hio/lib/hio-utl.h.m4 +++ b/hio/lib/hio-utl.h.m4 @@ -544,25 +544,25 @@ HIO_EXPORT const hio_uch_t* hio_find_ucstr_word_in_ucstr ( int ignorecase ); -HIO_EXPORT hio_uch_t* hio_find_uchar_in_chars ( +HIO_EXPORT hio_uch_t* hio_find_uchar_in_uchars ( const hio_uch_t* ptr, hio_oow_t len, hio_uch_t c ); -HIO_EXPORT hio_bch_t* hio_find_bchar_in_chars ( +HIO_EXPORT hio_bch_t* hio_find_bchar_in_bchars ( const hio_bch_t* ptr, hio_oow_t len, hio_bch_t c ); -HIO_EXPORT hio_uch_t* hio_rfind_uchar_in_chars ( +HIO_EXPORT hio_uch_t* hio_rfind_uchar_in_uchars ( const hio_uch_t* ptr, hio_oow_t len, hio_uch_t c ); -HIO_EXPORT hio_bch_t* hio_rfind_bchar_in_chars ( +HIO_EXPORT hio_bch_t* hio_rfind_bchar_in_bchars ( const hio_bch_t* ptr, hio_oow_t len, hio_bch_t c @@ -578,6 +578,48 @@ HIO_EXPORT hio_bch_t* hio_find_bchar_in_bcstr ( hio_bch_t c ); +HIO_EXPORT hio_uch_t* hio_rfind_uchar_in_ucstr ( + const hio_uch_t* ptr, + hio_uch_t c +); + +HIO_EXPORT hio_bch_t* hio_rfind_bchar_in_bcstr ( + const hio_bch_t* ptr, + hio_bch_t c +); + +HIO_EXPORT hio_uch_t* hio_find_uchars_in_uchars ( + const hio_uch_t* str, + hio_oow_t strsz, + const hio_uch_t* sub, + hio_oow_t subsz, + int inorecase +); + +HIO_EXPORT hio_bch_t* hio_find_bchars_in_bchars ( + const hio_bch_t* str, + hio_oow_t strsz, + const hio_bch_t* sub, + hio_oow_t subsz, + int inorecase +); + +HIO_EXPORT hio_uch_t* hio_rfind_uchars_in_uchars ( + const hio_uch_t* str, + hio_oow_t strsz, + const hio_uch_t* sub, + hio_oow_t subsz, + int inorecase +); + +HIO_EXPORT hio_bch_t* hio_rfind_bchars_in_bchars ( + const hio_bch_t* str, + hio_oow_t strsz, + const hio_bch_t* sub, + hio_oow_t subsz, + int inorecase +); + /* ------------------------------------ */ HIO_EXPORT hio_oow_t hio_rotate_uchars (