相关疑难解决方法(0)

在JavaScript中删除字符串中的重音符号/变音符号

如何从字符串中删除突出的字符?特别是在IE6中,我有这样的事情:

accentsTidy = function(s){
    var r=s.toLowerCase();
    r = r.replace(new RegExp(/\s/g),"");
    r = r.replace(new RegExp(/[àáâãäå]/g),"a");
    r = r.replace(new RegExp(/æ/g),"ae");
    r = r.replace(new RegExp(/ç/g),"c");
    r = r.replace(new RegExp(/[èéêë]/g),"e");
    r = r.replace(new RegExp(/[ìíîï]/g),"i");
    r = r.replace(new RegExp(/ñ/g),"n");                
    r = r.replace(new RegExp(/[òóôõö]/g),"o");
    r = r.replace(new RegExp(/œ/g),"oe");
    r = r.replace(new RegExp(/[ùúûü]/g),"u");
    r = r.replace(new RegExp(/[ýÿ]/g),"y");
    r = r.replace(new RegExp(/\W/g),"");
    return r;
};
Run Code Online (Sandbox Code Playgroud)

但IE6让我烦恼,似乎它不喜欢我的正则表达式.

javascript diacritics

385
推荐指数
13
解决办法
22万
查看次数

替换重音字符php

我试图用正常替换替换重音字符.以下是我目前正在做的事情.

    $string = "Éric Cantona";
    $strict = strtolower($string);

    echo "After Lower: ".$strict;

    $patterns[0] = '/[á|â|à|å|ä]/';
    $patterns[1] = '/[ð|é|ê|è|ë]/';
    $patterns[2] = '/[í|î|ì|ï]/';
    $patterns[3] = '/[ó|ô|ò|ø|õ|ö]/';
    $patterns[4] = '/[ú|û|ù|ü]/';
    $patterns[5] = '/æ/';
    $patterns[6] = '/ç/';
    $patterns[7] = '/ß/';
    $replacements[0] = 'a';
    $replacements[1] = 'e';
    $replacements[2] = 'i';
    $replacements[3] = 'o';
    $replacements[4] = 'u';
    $replacements[5] = 'ae';
    $replacements[6] = 'c';
    $replacements[7] = 'ss';

    $strict = preg_replace($patterns, $replacements, $strict);
    echo "Final: ".$strict;
Run Code Online (Sandbox Code Playgroud)

这给了我:

    After Lower: éric cantona
    Final: ric cantona
Run Code Online (Sandbox Code Playgroud)

上面给了我ric cantona我想要的输出 …

php string preg-replace non-ascii-characters

74
推荐指数
12
解决办法
14万
查看次数

如何删除MySQL中的重音?

我刚刚编制了一个包含100万个地名的数据库.我将在一个自动完成的小部件中使用它来查找城市.很多这些地方都有重音......当用户输入没有重音的名字时,我希望能够找到记录.

为了做到这一点,我得到了第二列,其中包含名称的非重音副本.其中许多记录仍然是空白的,所以我想编写一个查询来填充它们.这是否可以直接在MySQL中进行?如果是这样,怎么样?

mysql utf-8 diacritics

23
推荐指数
4
解决办法
5万
查看次数

PHP比较字符串与重音和没有重音

是否有可能在PHP中比较thoses字符串:

Æther == AEther == Aether
Run Code Online (Sandbox Code Playgroud)

我希望从这种等价中得到积极的结果

我实际上尝试了很多事情,但没有取得真正的成功:

  • 使用strtr将Æ和任何特殊字符替换为Ae(性能不佳,我宁愿保持字符串不变)

  • 使用strcmp/strcasecmp,这解决了上限问题,但我仍然遇到所有UTF-8字符的问题

我想要实现的是解析从json检索到的元素列表并与其他一些json文件匹配,有些可以拼写不同(utf8或非utf8,大写等),所以,现在,唯一的方法我发现这样做是为了制作第三个这样的json:

        {
        "match": {
            "name": "Unravel the \u00c6ther"
        },
        "replace": {
            "name": "Unravel the aether"
        }
Run Code Online (Sandbox Code Playgroud)

我用corect替换了基本字符串,但我想找到一种自动化过程的方法.

php string utf-8

0
推荐指数
1
解决办法
1516
查看次数