如何获得正确的子字符串大小?

问题描述 投票:1回答:1

我想正确匹配子字符串。

re:run("étude", "é",[unicode]).

运行此代码的结果是{match,[{0,2}]}。此结果看起来像我使用非规范化Unicode字符串。

所以接下来我尝试添加标准化:

re:run(unicode:characters_to_nfc_list("étude"), unicode:characters_to_nfc_list("é"),[unicode]).

结果相同:{match,[{0,2}]}

如何描述Erlang(我需要设置哪种选项)以获得正确的字符大小结果?我很想得到{match,[{0,1}]}

regex unicode erlang diacritics
1个回答
2
投票

尝试使用[[ucp而不是unicode选项。

>re:run("étude", "é",[ucp]). {match,[{0,1}]}
© www.soinside.com 2019 - 2024. All rights reserved.