问题 是否有更简单或美丽的方法来反转字符串?


现在我使用这样的方法:

let x_rev = new string(x.Reverse().ToArray())

6666
2017-12-29 17:13


起源

有没有解决方案 cs.hubfs.net/forums/thread/4324.aspx 吸引你? - Gabe


答案:


这里有一些代码基于Timwi对Nate答案的评论。屏幕上显示单个逻辑字母(由屏幕上显示),由多个实际字符组成。颠倒字符的顺序会使这些字母变成乱码。

蒂姆维帮助指出该框架提供了一个 TextElementEnumerator 它适用于逻辑文本元素而不是字符,并正确处理这些多字符字母。我之前没有听说过这个类,所以我编写了一些代码,它使用TextElementEnumerator正确地反转字符串,并将结果与​​天真的字符串反转进行比较。

open System
open System.Globalization

// five characters that render as three letters: "