【问题标题】:Replacing local characters?替换本地字符?
【发布时间】:2012-01-14 23:23:33
【问题描述】:

有什么方法可以替换任何外来字符,例如:ã、ä 到 a、Ĉ、ć 到 c 等。 我的意思是留下简单的字母,比如 a-Z,没有任何额外的东西。

【问题讨论】:

  • 方法很多。您是否有一种语言可以用来完成这项任务?
  • 问题的标题和文本是矛盾的,因为文本是指替换个字符。

标签: php text locale character


【解决方案1】:

如果您可以使用正则表达式,您可以使用此正则表达式:

str = str.replaceAll("[^a-zA-Z]", ""); //Assuming it to be a Java String

但是,如果您希望规范化您的文本,您应该按照该问题的公认答案建议进行操作:Remove diacritical marks (ń ǹ ň ñ ṅ ņ ṇ ṋ ṉ ̈ ɲ ƞ ᶇ ɳ ȵ) from Unicode chars

如果您需要在 PHP 中实现相同的功能,您可以编写:

echo iconv('UTF-8', 'US-ASCII//TRANSLIT', 'asdaśćż,ąółwe,ÄĄ;ú');

【讨论】:

  • 完全删除带有变音符号的字符,而不是将它们“展平”为它们的ASCII等价物。
  • 这个问题明确说明删除字符,不是吗?
  • 我认为最重要的部分是:ä to a, Ĉ, ć to c
  • 啊,是的。似乎我没有仔细阅读这个问题。感谢您指出。
  • 编辑了我的答案来做到这一点。谢谢。
猜你喜欢
  • 2015-01-27
  • 2011-09-30
  • 2022-01-11
  • 1970-01-01
  • 2011-09-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-21
相关资源
最近更新 更多