gpt4 book ai didi

c - 在字符串大写 C 中制作特定单词

转载 作者:太空宇宙 更新时间:2023-11-04 02:18:39 25 4
gpt4 key购买 nike

我正在努力寻找一种方法来解析字符串并通过将其设为大写来“突出显示”结果中的搜索词。

我试过使用 strstr 并移动指针并“向上”调整字符,但无济于事。

char * highlight( char *str, char *searchstr ) {

char *pnt=str;
int i;

pnt=strstr(str,searchstr);

while(pnt){

printf("ststr retured: %s\n", pnt);

for(i=0;i<strlen(searchstr);i++) {
printf("%c",toupper(pnt[i]));
}
printf("\n");
pnt=pnt+strlen(searchstr);
pnt=strstr(pnt,searchstr);

}

return str;

}

非常感谢任何建议。

最佳答案

由于 Schot 提到了每一个事件:

#include <string.h>

char *highlight(char *str, char *searchstr) {

char *pnt = str;

while (pnt = strstr(pnt, searchstr)) {
char *tmp = searchstr;
while(*(tmp++)) { *pnt = toupper(*pnt); pnt++; }
}
return str;

}

int main() {
char s[] = "hello world follow llollo";
char search[] = "llo";
puts(highlight(s, search));
return 0;
}

输出是:

$ ./a.out 
heLLO world foLLOw LLOLLO

关于c - 在字符串大写 C 中制作特定单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3940885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com