我可以找到一個使用strstr
函數的子字符串。例如,我可以找到「Hello」子串,但我想找到「Hello」和「welcome」。不僅他們中的一個我想找到他們兩個。我想要考慮「你好」和「歡迎」,就像他們是同一個詞一樣。如果程序可以找到世界「hello」,它將返回false,如果程序可以找到世界「welcome」,它將返回false,但如果程序可以找到單詞「hello」和「welcome」,它將返回true。我怎樣才能做到這一點?我怎麼能找到兩個子字符串
int main(){
int total=0;
char *p="Hello world welcome!";
while (strstr(p,"Hello") != NULL) {
printf("%s", p); // to know the content of p
p++;
total++;
}
printf("%i", total);
getch(); // pause
}
是如何把'的strstr '在'while'循環裏應該可以幫到你嗎?它會在第一次嘗試中找到子字符串,否則它將不會。不需要採取進一步行動。 – usr2564301 2014-10-19 11:46:22
@Jongware我同意。唯一比周期性的'strstr'更加不尋常的是,它似乎也在張貼的答案中飼養起來。我想我們都可以在無知的土地上,但我現在很懷疑它。 – WhozCraig 2014-10-19 12:07:25
對。實際上,循環增加了搜索字符串超出開始位置的每個*字符的出現次數。例如,對於'歡迎',它將返回12. – usr2564301 2014-10-19 12:10:04