在 OCaml 中,如何计算可能具有 unicode 编码的字符串的长度?举个例子,这是我的问题:
\nutop # "\\u{02227}";;\n- : string = "\xe2\x88\xa7"\nutop # Caml.String.length "\\u{02227}";;\n- : int = 3\nutop # Base.String.length "\\u{02227}";;\n- : int = 3\nRun Code Online (Sandbox Code Playgroud)\n我想得到明显的答案:1。
\n如果您想计算扩展字素簇(也称为图形字符)的数量,您可以使用uuseg。例如
let len = Uuseg_string.fold_utf_8 `Grapheme_cluster (fun x _ -> x + 1) 0\nlet n = len "\xe2\x88\xa7";;\nRun Code Online (Sandbox Code Playgroud)\n回报
\n\n\n值 n:整数 = 1
\n
| 归档时间: |
|
| 查看次数: |
259 次 |
| 最近记录: |