【发布时间】:2011-12-05 15:28:40
【问题描述】:
我有以下字符串:"http://www.google.ie/"。我想创建一个字符串"www.google.ie"
如何在 C 中做到这一点?到目前为止,这是我尝试过的:
char* url="http://www.google.ie/";
char* url_stripped=NULL;
char* out=strtok(url,"http://");
while(out){
out=strtok(0,".");
url_stripped=out;
break;
}
printf("%s\n",url_stripped);
但它不起作用。我也担心如果我有一个包含“h”、“t”、“t”或“p”的网址,事情会变得一团糟。
我还需要能够从一开始就删除“https://”。
【问题讨论】:
-
尝试 strstr() 也可以:)
-
如果要在第二个斜线处拆分,为什么要在
.上进行分词? -
见stackoverflow.com/questions/726122/…(特别是bortzmeyer的回答)
-
除了其他人提到的所有其他内容之外,您不得将指向字符串文字的指针作为第一个参数传递给
strtok,因为strtok在地点。