Pattern matching
import java.util.regex.*;
import java.io.*;
public class ReaderIter
{
public static void main(String[] args) throws IOException
{
Pattern patt = Pattern.compile("[A-Za-z][a-z]+");
BufferedReader r = new BufferedReader
(new FileReader("ReaderIter.java"));
String line;
while ((line = r.readLine()) != null)
{
Matcher m = patt.matcher(line);
while (m.find())
{
System.out.println(m.group(0));
int start = m.start(0);
int end = m.end(0);
Use CharacterIterator.substring(offset, end);
System.out.println(line.substring(start, end));
}
}
}
}
Removing whitespaces
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] argv) throws Exception
{
String ExString = "This is a Java program.
This is another Java Program.";
String result=removeDuplicateWhitespace(ExString);
System.out.println(result);
}
public static CharSequence
removeDuplicateWhitespace(CharSequence inputStr)
{
String patternStr = "\\s+";
String replaceStr = " ";
Pattern pattern = Pattern.compile(patternStr);
Matcher matcher = pattern.matcher(inputStr);
return matcher.replaceAll(replaceStr);
}
}
Matching Phone Numbers
public class MatchPhoneNumber
{
public static void main(String args[])
{
isPhoneValid("1-999-585-4009");
isPhoneValid("999-585-4009");
isPhoneValid("1-585-4009");
isPhoneValid("585-4009");
isPhoneValid("1.999-585-4009");
isPhoneValid("999 585-4009");
isPhoneValid("1 585 4009");
isPhoneValid("111-Java2s");
}
public static boolean isPhoneValid(String phone)
{
boolean retval = false;
String phoneNumberPattern =
"(\\d-)?(\\d{3}-)?\\d{3}-\\d{4}";
retval = phone.matches(phoneNumberPattern);
String msg = "No match: pattern:" + phone
+ "\r\n regex: " + phoneNumberPattern;
if (retval)
{
msg = " Match: pattern:" + phone
+ "\r\n regex: " + phoneNumberPattern;
}
System.out.println(msg + "\r\n");
return retval;
}
}
Counting
Group of Words
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatcherGroupCountExample
{
public static void main(String args[])
{
Pattern p = Pattern.compile("J(ava)");
String candidateString = "This is Java.
This is a Java example.";
Matcher matcher = p.matcher(candidateString);
int numberOfGroups = matcher.groupCount();
System.out.println("numberOfGroups =" + numberOfGroups);
}
}
Searching a Word
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String args[])
{
Pattern p = Pattern.compile("j(ava)");
String candidateString = "This is a java program.
This is another java program.";
Matcher matcher = p.matcher(candidateString);
int nextIndex = matcher.start(1);
System.out.println(candidateString);
System.out.println("The index for java is:" + nextIndex);
}
}
No comments:
Post a Comment