当前位置: 首页 > 面试题库 >

将Java字符串转换为ascii

夹谷斌蔚
2023-03-14
问题内容

我需要String将由某些特定于某些语言的字母(例如HÄSTDJUR-注意Ä)组成的s
转换为String不带那些特殊字母(在这种情况下为HASTDJUR)的。如何用Java做到这一点?感谢帮助!

它不是真的如何听起来。该场景如下-您要使用该应用程序,但没有瑞典语键盘。因此,您无需查看字符映射表,而是通过将特殊字母替换为拉丁字母中的典型字母来键入它。


问题答案:

我认为您的问题与此问题相同:

Java-消除重音并将其转换为普通字母

因此答案也相同:

String convertedString = 
       Normalizer
           .normalize(input, Normalizer.Form.NFD)
           .replaceAll("[^\\p{ASCII}]", "");

参考文献

看到

  • JavaDoc:Normalizer.normalize(String,Normalizer.Form)
  • JavaDoc:Normalizer.Form.NFD
  • Sun Java教程:Normalizer的API

示例代码:

final String input = "Tĥïŝ ĩš â fůňķŷ Šťŕĭńġ";
System.out.println(
    Normalizer
        .normalize(input, Normalizer.Form.NFD)
        .replaceAll("[^\\p{ASCII}]", "")
);

输出:

这是一个时髦的弦



 类似资料:
  • 问题内容: 得到了以下格式的字符串:YYYY-MM-DD- HH.MM.SS.NNNNNN时间戳记来自DB2数据库。我需要将其解析为java.sql.Timestamp,并且不要丢失任何精度。到目前为止,我一直找不到现有的代码来解析这么多毫秒。SimpleDateFormat返回一个Date,并且仅解析为毫秒。简短地看了一下JodaTime,也没有发现任何效果。 问题答案: 您是否尝试过使用?看起

  • 问题内容: 将带逗号的字符串数字(例如:835,111.2)转换为Double实例的最简单,正确的方法是什么。 谢谢。 问题答案: 看一看。例如: 根据您使用的数量类型,您可能想解析为一个。最简单的方法可能是: 或与一起使用:

  • 问题内容: 我不确定是我还是什么,但是将双精度转换为字符串时遇到问题。 这是我的代码: 我是在做错事还是在这里错过了一步。 尝试将其转换时出现错误。 我正在尝试在onTouchListener中执行此操作。病态发布更多代码,基本上是当用户触摸编辑文本框时,我希望信息计算填充编辑文本框。 问题答案: 这会将double转换为String

  • 问题内容: 我想将String转换为KeyEvent以执行以下操作: 问题答案: 我基本上是在用荣耀的声明。简单快捷: 如果要进行一些自定义键键入,则可以扩展该类并重写该type(char)方法。例如: 当然,还有改进的余地,但是你知道了。

  • 问题内容: 我有一个,我需要一个。如何从一个转换为另一个? 问题答案: 好问题。我有以下五种 6种方法可以做到这一点。 注意:返回。因此有效地两者是相同的。 调用,这又设置了数组。 另一方面,调用以下程序包私有构造函数。 从源代码中的Java 8的源代码 因此似乎是最有效的方法,在这两个存储器和速度方面,用于转换char到String。

  • 问题内容: 如何将经典字符串转换为f字符串? 输出: 所需的输出: 问题答案: f字符串是 语法 ,而不是对象类型。您不能将任意字符串转换为该语法,该语法会创建一个字符串对象,而不是相反。 我假设您想用作模板,因此只需在对象上使用方法: 如果要提供可配置的模板服务,请创建一个包含所有可以插值的字段的名称空间字典,并与调用语法一起使用以应用名称空间: 然后,用户可以在字段中的名称空间中使用任何键(或