gpt4 book ai didi

vim - 将 unicode 代码点转换为字符的表达式

转载 作者:行者123 更新时间:2023-12-02 21:24:06 26 4
gpt4 key购买 nike

我有一个已转义 unicode 的文件:

blah blah blah \u2192 blah blah blah

我想通过搜索/替换将 unicode 转义符转换为实际字符:

:%s/\\u\(\d\{4}\)/\=CodePointToCharacter(submatch(1))/g

虽然我知道如何在插入模式下将代码点转换为字符(CTRL-V u 2192 for →),但我不知道如何在 vimL 表达式中进行转换。

我需要编写自定义函数吗?或者有我可以使用的内置函数或插件吗?

最佳答案

您可以先使用str2nr()将数字从十六进制转换,然后使用nr2char显示字符。

稍微扩展一下你的命令:

%s/\\u\(\x\{4}\)/\=nr2char(str2nr(submatch(1),16))/g

关于vim - 将 unicode 代码点转换为字符的表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25767997/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com