gpt4 book ai didi

rust - 标准库中是否有完善的功能或一些推荐的方法来扩展Rust中的转义序列?

转载 作者:行者123 更新时间:2023-12-03 11:40:54 25 4
gpt4 key购买 nike

我正在编写的应用程序中接受用户输入,并希望扩展用户输入的转义序列。

例如,如果用户输入\\n,它将被解释为str \\\\n。我想以一般的方式解释该字符串(转换为换行符)和类似的字符串。

我当然可以在最基本的代码上使用String::replace(),而无需其他代码,但我更喜欢一个通用的解决方案,该解决方案还可以处理十六进制转义符(\x61a)。

最佳答案

转义通常由词法分析器/解析器处理(基本上它们是语言语法的一部分),我不认为有一个stdlib函数可以管理它们,因为它将在更低的层次上完成。

此外,转义往往是高度特定于语言的,可能是意料之外的方式。 Rust有一个singularly small list of escape sequences,即probably desirable compared to the garbage available from C's,但我仍然不知道您是否愿意允许例如任意十六进制或Unicode转义序列。

因此,我建议您设置自己明确支持的转义列表,尽管如果您确实不想there are probably third-party packages which can help you

关于rust - 标准库中是否有完善的功能或一些推荐的方法来扩展Rust中的转义序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61608241/

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