codescracker


java

Java Regular Expressions



« Previous Tutorial Next Tutorial »


Regular expressions are basically the sequence of characters, helps in matching the other strings, using a specialized syntax held in a pattern.

Java Regular Expression Example

Here is an example, finds digit string from the given alphanumeric string in Java:

/* Java Program Example - Java Regular Expressions */

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class JavaProgram
{ 
	public static void main(String args[])
	{
		String str = "This order was placed for QT3000! OK?";
		String pattern = "(.*)(\\d+)(.*)";
		Pattern rep = Pattern.compile(pattern);
		Matcher mat = rep.matcher(str);
		if(mat.find())
		{
			System.out.println("Found value : " + mat.group(0));
			System.out.println("Found value : " + mat.group(1));
			System.out.println("Found value : " + mat.group(2));
		}	
		else
		{
			System.out.println("No Match Found..!!");
		}	
	}
}

Here is the output of the above Java program:

java regular expressions

Here is another example programs, counts the word "cats" present in the string:

/* Java Program Example - Java Regular Expressions */

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class JavaProgram
{
	private static final String REGEX = "\\bcat\\b";
	private static final String INPUT = "cat cat cat cattie cat";
	public static void main(String args[])
	{
		Pattern pat = Pattern.compile(REGEX);
		Matcher mat = pat.matcher(INPUT); // get a matcher object
		int count = 0;
		while(mat.find())
		{
			count++;
			System.out.println("Match number " + count);
			System.out.println("start() : " + mat.start());
			System.out.println("end() : " + mat.end());
		}
	}
}

Above Java program produce the following output:

regular expressions in java

Here is another program, uses matches and lookingAt methods in Java:

/* Java Program Example - Java Regular Expressions */

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches
{
	private static final String REGEX = "foo";
	private static final String INPUT = "fooooooooooooooooo";
	private static Pattern pat;
	private static Matcher mat;
	public static void main(String args[])
	{
		pat = Pattern.compile(REGEX);
		mat = pat.mat(INPUT);
		System.out.println("Current REGEX is : " + REGEX);
		System.out.println("Current INPUT is : " + INPUT);
		System.out.println("lookingAt() : " + mat.lookingAt());
		System.out.println("matches() : " + mat.matches());
	}
}

Here is the output of this Java program:

java matches and lookingAt method

Here is another program, uses replaceFirst and replaceAll methods in Java:

/* Java Program Example - Java Regular Expressions */

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches
{
	private static String REGEX = "dog";
	private static String INPUT = "The dog says meow. " + "All dogs say meow";
	private static String REPLACE = "cat";
	public static void main(String args[])
	{
		Pattern patr = Pattern.compile(REGEX);
		Matcher matc = patr.matcher(INPUT);
		INPUT = matc.replaceAll(REPLACE);
		System.out.println(INPUT);
	}
}

Here is the output of the above Java program:

java replacefirst replaceall method

Let's look at another program, uses appendReplacement and appendTail methods in Java:

/* Java Program Example - Java Regular Expressions */

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches
{
	private static String REGEX = "a*b";
	private static String INPUT = "aabfooaabfooabfoob";
	private static String REPLACE = "-";
	public static void main(String args[])
	{
		Pattern patrn = Pattern.compile(REGEX);
		Matcher matc = patrn.matcher(INPUT);
		StringBuffer sbob = new StringBuffer();
		while(matc.find())
		{
			matc.appendReplacement(sbob, REPLACE);
		}
		matc.appendTail(sbob);
		System.out.println(sb.toString());
	}	
}

The above Java program produce this output:

java appendtail appendReplacement method

« Previous Tutorial Next Tutorial »



Tools
Calculator

Quick Links
Signup - Login - Give Online Test