//*********************************************************
// string に最初に現れた pattern へのポインタを返します。
// pattern の終端文字 '\0' は検索対象外です。
// pattern が空文字列の場合は string を返します。
// pattern が見つからない場合は NULL を返します。
//*********************************************************
char *strstrj( const char *string, const char *pattern )
{
// pattern が空文字列の場合は string を返します。
if ( '\0' == pattern[ 0 ] )
{
return (char *)string;
}
// string に最初に現れた pattern へのポインタを返します。
const size_t length = strlen( pattern );
{for( const char *p = string; NULL != (p = strchrj(p, pattern[ 0 ])); ++p )
{
if ( 0 == strncmp( p, pattern, length ) )
{
return (char *)p;
}
}}
// pattern が見つからない場合は NULL を返します。
return NULL;
}//strstrj
関連
・シフトJIS文字列の判定
・シフトJISコードで使用する値
・シフトJIS文字列の文字検索
|
|