There are many tools available that support NLP. Some of these are available with the Java SE SDK but are limited in their utility for all but the simplest types of problems. Other libraries such as Apache's OpenNLP and LingPipe provide extensive and sophisticated support for NLP problems.
Low-level Java support includes string libraries, such as
StringBuffer. These classes possess methods that perform searching, matching, and text replacement. Regular expressions use special encoding to match substrings. Java provides a rich set of techniques to use regular expressions.
As discussed earlier, tokenizers are used to split text into individual elements. Java provides supports for tokenizers with: