如何从c中删除字符串中的子字符串

时间:2016-07-13 11:40:22

标签: c string

有什么方法可以删除给定字符串的子字符串吗? 我的意思是,让我们说我的字符串包含由_$_分隔的朋友的名字,我想从该字符串中删除一个朋友的名字,是否有任何功能可以这样做?
示例:mike tull_$_tom cruise_$_noy elias我希望删除tome cruise

P.S:我不知道子字符串的确切位置,当然我可以使用strstr,但是有一个内置函数可以这样做吗?

2 个答案:

答案 0 :(得分:2)

您可以使用strtok拆分字符串。请注意,它会修改您作为参数传递的字符串。

答案 1 :(得分:0)

可能重复:Removing substring from a string?

找到开始和结束的位置' $'在你的字符串中分隔你需要的名字(或任何其他分隔符),然后使用strcpy复制字符串从开始' $'结束' $'字符串长度(结束位置 - 起始位置+1)到您要使用的变量。

或按照建议使用strtok。查看相同的文档:http://www.tutorialspoint.com/c_standard_library/c_function_strtok.htm