3

次のようなアクセント付き文字を動的に置き換える方法はありますか?

requesón => requeson

つまり、アクセントのある(または何でも)文字はすべて通常の文字に置き換えられます。

これはColdFusionを使用して可能ですか?

4

1 に答える 1

7

Javaテキストの正規化と正規表現を使用してアクセント付き文字を修正できます。cflibには、これをすでに実行する関数があります。

差出人:http://cflib.org/udf/deAccent

function deAccent(str){
    //based on the approach found here: http://stackoverflow.com/a/1215117/894061
    var Normalizer = createObject("java","java.text.Normalizer");
    var NormalizerForm = createObject("java","java.text.Normalizer$Form");
    var normalizedString = Normalizer.normalize(str, createObject("java","java.text.Normalizer$Form").NFD);
    var pattern = createObject("java","java.util.regex.Pattern").compile("\p{InCombiningDiacriticalMarks}+");
    return pattern.matcher(normalizedString).replaceAll("");
}
于 2013-01-31T16:46:44.870 に答える