I want a regular expression pattern that will match with the end of a string.
I\'m implementing a stemming algorithm that will remove suffixes of a word.
E.g. for
Use $
:
Pattern p = Pattern.compile("s$");
take a look for following example:
String ss = "Developers".replaceAll(".$", " ");
You need to match "s", but only if it is the last character in a word. This is achieved with the boundary assertion $:
input.replaceAll("s$", " ");
If you enhance the regular expression, you can replace multiple suffixes with one call to replaceAll:
input.replaceAll("(ed|s)$", " ");
public static void main(String[] args)
{
String message = "hi this message is a test message";
message = message.replaceAll("message$", "email");
System.out.println(message);
}
Check this, http://docs.oracle.com/javase/tutorial/essential/regex/bounds.html