org.apache.commons.codec.language.bm
Class PhoneticEngine
- java.lang.Object
- org.apache.commons.codec.language.bm.PhoneticEngine
public class PhoneticEngine extends Object
Converts words into potential phonetic representations.This is a two-stage process. Firstly, the word is converted into a phonetic representation that takes into account the likely source language. Next, this phonetic representation is converted into a pan-European 'average' representation, allowing comparison between different versions of essentially the same word from different languages.
This class is intentionally immutable and thread-safe. If you wish to alter the settings for a PhoneticEngine, you must make a new one with the updated settings.
Ported from phoneticengine.php
- Since:
- 1.6
- Version:
- $Id: PhoneticEngine.java 1549875 2013-12-10 15:54:15Z ggregory $
Constructor Summary
Constructors Constructor and Description PhoneticEngine(NameType nameType, RuleType ruleType, boolean concat)
Generates a new, fully-configured phonetic engine.PhoneticEngine(NameType nameType, RuleType ruleType, boolean concat, int maxPhonemes)
Generates a new, fully-configured phonetic engine.
Method Summary
Methods Modifier and Type Method and Description String
encode(String input)
Encodes a string to its phonetic representation.String
encode(String input, Languages.LanguageSet languageSet)
Encodes an input string into an output phonetic representation, given a set of possible origin languages.Lang
getLang()
Gets the Lang language guessing rules being used.int
getMaxPhonemes()
Gets the maximum number of phonemes the engine will calculate for a given input.NameType
getNameType()
Gets the NameType being used.RuleType
getRuleType()
Gets the RuleType being used.boolean
isConcat()
Gets if multiple phonetic encodings are concatenated or if just the first one is kept.
Constructor Detail
PhoneticEngine
public PhoneticEngine(NameType nameType, RuleType ruleType, boolean concat)
Generates a new, fully-configured phonetic engine.- Parameters:
nameType
- the type of names it will useruleType
- the type of rules it will applyconcat
- if it will concatenate multiple encodings
PhoneticEngine
public PhoneticEngine(NameType nameType, RuleType ruleType, boolean concat, int maxPhonemes)
Generates a new, fully-configured phonetic engine.- Parameters:
nameType
- the type of names it will useruleType
- the type of rules it will applyconcat
- if it will concatenate multiple encodingsmaxPhonemes
- the maximum number of phonemes that will be handled- Since:
- 1.7
Method Detail
encode
public String encode(String input)
Encodes a string to its phonetic representation.- Parameters:
input
- the String to encode- Returns:
- the encoding of the input
encode
public String encode(String input, Languages.LanguageSet languageSet)
Encodes an input string into an output phonetic representation, given a set of possible origin languages.- Parameters:
input
- String to phoneticise; a String with dashes or spaces separating each wordlanguageSet
-- Returns:
- a phonetic representation of the input; a String containing '-'-separated phonetic representations of the input
getLang
public Lang getLang()
Gets the Lang language guessing rules being used.- Returns:
- the Lang in use
getNameType
public NameType getNameType()
Gets the NameType being used.- Returns:
- the NameType in use
getRuleType
public RuleType getRuleType()
Gets the RuleType being used.- Returns:
- the RuleType in use
isConcat
public boolean isConcat()
Gets if multiple phonetic encodings are concatenated or if just the first one is kept.- Returns:
- true if multiple phonetic encodings are returned, false if just the first is
getMaxPhonemes
public int getMaxPhonemes()
Gets the maximum number of phonemes the engine will calculate for a given input.- Returns:
- the maximum number of phonemes
- Since:
- 1.7
Copyright © 2002–2013 The Apache Software Foundation. All rights reserved.