gpt4 book ai didi

c++ - 如何在 C++ 中的日文字符串中查找空格?

转载 作者:行者123 更新时间:2023-11-28 06:19:30 24 4
gpt4 key购买 nike

我正在为日语句子开发一个自动更正程序,句子中缺失的字符将表示为空格。

我正在读取 2 个文件...

输入文件:

 はアビガイル
おはよう くん

字典文件:

私はアビガイル
おはよう花くん

遗漏的私、花用空格表示

如何从输入文件中找到空间?

我试过 lineFromFile.find("") 但它返回垃圾,因为它不是通常的英文字符。还尝试了 lineFromFile.find('\0x20')lineFromFile.find(' ')

我也试过 string lineFromFile = u8"あび" 但 u8 前缀得到一个错误“标识符‘u8’未定义”

我正在使用 C++、Visual Studio 2013、gcc 4.8.3,我当前的代码页是 Unicode(带有签名的 UTF-8)

如果您认为这是一个重复的问题,请评论相同已回答问题的链接

我的计划是:

  1. 从输入文件的行中查找空格(返回spaceIndex)
  2. 将字典文件中的行保存到 string temp
  3. 将变量temp中的spaceIndex中的字符替换为
  4. 将输入文件中的行与 temp 进行比较
  5. 重复直到找到匹配或直到字典文件的eof

请帮忙,我有 3 天 :'(

最佳答案

The missing characters 私 and 花 are represented as a space

不,他们不是。在十六进制编辑器中查看 ∀はアニガイル 显示第一个字符是 '\u3000'IDEOGRAPHIC SPACE不是SPACE .

所以要找到它,您需要使用 find(u8"\u3000")find("\xe3\x80\x80)

如果幸运的话,输入文件中的所有日语字符都被编码为 UTF-8 中的三个字节,那么您可以将它们视为字符串中的固定位置,并将三个字节的 block 从一个字符串替换为另一个字符串。

关于c++ - 如何在 C++ 中的日文字符串中查找空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29562230/

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