如何阻止R语言中Pandoc包转换时添加换行符?
解决Pandoc转换Docx到HTML时的换行符问题
你可以通过两种方式避免转换后的HTML中出现\n\r换行符:
- 转换后清理字符串
直接用R的字符串处理工具移除多余的换行符,比如用基础包的gsub:
message = pandoc::pandoc_convert(file="message.docx", from = "docx", to = "html") # 移除所有\n和\r字符 message_clean = gsub("[\n\r]", "", message)
如果习惯用stringr包,也可以用更直观的写法:
library(stringr) message_clean = str_remove_all(message, "[\n\r]")
- 调整Pandoc转换参数
从源头上让Pandoc不生成额外换行符,给pandoc_convert添加--wrap=none参数,这个参数会禁用Pandoc的自动换行功能:
message = pandoc::pandoc_convert( file="message.docx", from = "docx", to = "html", args = "--wrap=none" )
要是还有残留的换行符,大概率是原Docx文件本身的格式带进来的,此时结合转换后的字符串清理就能彻底解决。
内容的提问来源于stack exchange,提问作者Charles Stangor
相关产品推荐
相关产品推荐

