我有一个很长的字符串,我想要删除它.我希望摆脱字符"<"(包含)之后的所有内容.这是有效的代码:
char *end;
end = strchr(mystring, '<');
mystring[strlen(mystring) - strlen(end)] = '\0';
Run Code Online (Sandbox Code Playgroud)
所以,如果mystring是
"asdfjk234klsjadflnwer023jokmnasdf</tag>alskjdflk23<tag2>akjsldfjsdf</tag2>blabla"
Run Code Online (Sandbox Code Playgroud)
这段代码会回来
"asdfjk234klsjadflnwer023jokmnasdf"
Run Code Online (Sandbox Code Playgroud)
我想知道这是否可以更简单的方式完成?我知道我可以在mystring中的每个字符上递增一个计数器,直到找到"<"然后使用该int作为索引,但这似乎同样麻烦.所有其他内置字符串库似乎没有用,但我确定我只是以错误的方式看待它.我多年没用过C了.
任何帮助表示赞赏!
当然.这是执行它的惯用方法:
char *end;
end = strchr(mystring, '<');
if (end)
*end = '\0';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |