c - 使用 C 替换文件中的单词

标签 c replace

如何使用 C 将文件中的单词替换为另一个单词?

例如,我有一个文件,其中包含:

my friend name is sajid

我想将单词 friend 替换为祖父,这样文件就会更改为:

my grandfather name is sajid 

(我正在 Ubuntu Linux 上进行开发。)

更新:

我正在用 C 语言进行归档。我创建了一个 .txt 文件并向其中写入一些数据,但随着程序的进展,我必须搜索一些文本并将其替换为其他单词。我面临的问题是假设在我的文件中我写了

"I bought apple from the market"

如果我用菠萝替换苹果,因为苹果有 5 个字符,菠萝有 9 个字符,它将写为

"I bought pineapple m the market"

它也影响了 apple 之后写的文字。

我必须使用 C 语言而不是命令行脚本来完成它。

最佳答案

使用现有的 Linux sed 程序怎么样?

sed -i 's/friend/grandfather/' 文件名

这会将现有文件中的 friend 替换为祖父。如果您想保留原件,请先复印一份!

编辑:

或者,将文件加载到 STL 字符串中,使用 this 等技术将“friend”替换为“grandfather” ,并将新字符串保存到文件中。

关于c - 使用 C 替换文件中的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5042196/

相关文章:

ios - NSString 在出现的字符串周围添加标签

c - puts 或 putchar 是否更适合打印换行符?

regex - 使用Powershell和正则表达式操作String

regex - 如何使用 sed 替换配置文件的变量?

c - C语言计算输出一维数组结果?

regex - 如何在可以包含该分隔符的一系列路径中替换该分隔符?

MySQL 错误 : "WHERE post LIKE" not working

c - 在变量参数函数中使用字符串指针

c - 如何将 Compare_fn 类型的内容传递给 C 程序的 sprintf()?

c - 从不兼容的指针类型传递 arg 1 of `foo'