文字列の分割をしたいのですが、strtokの挙動が今ひとつよく分かりません。

#include <stdio.h>
#include <string.h>
int main(){
    char str[]="信長<><>2004/10/18 12:42:45<><>はじめまして<><>カッコイイHPですね。\nこれからちょくちょく遊びに来ますんで。\nよろしく。";
    char sp[]="<><>";
    char *r=NULL;
    r=strtok(str,sp);
    while(r != NULL){
        printf(">>%s\n",r);
        r=strtok(NULL,sp);
    }
    return 0;
}

char sp[]="<><>"の部分を
char sp[]="<>"にしても、char sp[]="k<>"にしても、同じ結果になります。
どうしてでしょうか?