swift - 比较带和不带变音符号的阿拉伯字符
问题描述
试图比较两个阿拉伯字符串,一个有变音符号,一个没有。
بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ 和 بسم الله الرحمن الرحيم
无论如何要删除变音符号然后比较还是只比较字符并忽略变音符号?
解决方案
您可以使用以下选项compare()
的字符串:.diacriticInsensitive
import Foundation
let s1 = "بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ"
let s2 = "بسم الله الرحمن الرحيم"
print(s1 == s2)
// false
print(s1.compare(s2, options: .diacriticInsensitive) == .orderedSame)
// true
推荐阅读
- pandas - 如何解决错误“未知选项:--zipfile,fileb://panda_layer.zips)”?aws,层,λ
- postgresql - apps.get_model ValueError:无法查询必须是实例
- ag-grid - ag-grid setColumnVisible 无法显示/隐藏行组列?
- ruby - 在 ruby 中获取地址的网络路由
- jmeter - 如何使用预处理器将 JSON 请求存储在变量中,这些变量应将其作为 JMeter 中的 base64 值传递给后续请求
- java - 开发一个使用大于 1 的密钥的 Julius Caesar 密码的应用程序
- .net - 当我检查 MAUI 与 maui-check 的兼容性时,如何确定错误在哪里?
- curl - 使用 frappe api 获取字段
- firebase - 在 null 安全中“需要”在 Firestore 中获取 uid 的其他解决方案是什么?
- c++ - 当我尝试构建 gnome builder 时,ninja 在 glib gtype.h 文件中给出了错误