001 /** 002 * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved. 003 * 004 * This library is free software; you can redistribute it and/or modify it under 005 * the terms of the GNU Lesser General Public License as published by the Free 006 * Software Foundation; either version 2.1 of the License, or (at your option) 007 * any later version. 008 * 009 * This library is distributed in the hope that it will be useful, but WITHOUT 010 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 011 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 012 * details. 013 */ 014 015 package com.liferay.util; 016 017 import com.liferay.ibm.icu.text.Transliterator; 018 import com.liferay.portal.kernel.util.StringUtil; 019 020 /** 021 * @author Brian Wing Shun Chan 022 */ 023 public class Normalizer { 024 025 public static String normalizeToAscii(String s) { 026 String normalizedText = _transliterator.transform(s); 027 028 return StringUtil.replace( 029 normalizedText, _UNICODE_TEXT, _NORMALIZED_TEXT); 030 } 031 032 private static final String[] _NORMALIZED_TEXT = {"l"}; 033 034 private static final String[] _UNICODE_TEXT = {"\u0142"}; 035 036 private static Transliterator _transliterator = 037 Transliterator.getInstance("NFD; [:Nonspacing Mark:] Remove; NFC"); 038 039 }