gpt4 book ai didi

java - 我如何使用 Java Regex 将土耳其语字符转换为 UTF-8

转载 作者:行者123 更新时间:2023-12-04 15:52:38 25 4
gpt4 key购买 nike

我正在尝试在 Java 中进行正则表达式操作。但是当我搜索土耳其语文本时,我遇到了麻烦。例如;

Search Text = "Ahmet Yıldırım" or "Esin AYDEMİR" 

//The e-mail stated in part(Ex: yildirim@example.com) , trying to look in name.
Regex Strings = "yildirim" or "aydemir".

搜索到的文本是动态变化的。因此,如何使用 java 正则表达式模式解决此问题。或者我如何转换土耳其语字符( Ex: AYDEMİR convert to AYDEMIRYıldırım -> Yildirim )。

对不起,关于我的语法错误!...

最佳答案

使用 Pattern.CASE_INSENSITIVE Pattern.UNICODE_CASE 旗帜:

Pattern p = Pattern.compile("yildirim", Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE);

Demo on ideone
Pattern.CASE_INSENSITIVE默认情况下,仅对 US-ASCII 字符集中的字符进行不区分大小写的匹配。 Pattern.UNICODE_CASE修改行为​​以使其不区分大小写匹配所有 Unicode 字符。

请注意,Java regex 中不区分大小写的 Unicode 匹配是以不区分文化的方式完成的。因此, ı , i , I , İ被认为是相同的字符。

根据您的用例,您可能希望使用 Pattern.LITERAL如果你想禁用模式中的所有元字符,或者只使用 Pattern.quote() 转义模式的文字部分

关于java - 我如何使用 Java Regex 将土耳其语字符转换为 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32117953/

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