package com.mindprod.example;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static java.lang.System.*;
/**
* Finding with a Regex, case-insensitive. Prove \\p{lower] trumps CASE_INSENSITIVE.
* <p/>
* Use a regex to see repeated instances of a pattern embedded in a large string .
*
* @author Roedy Green, Canadian Mind Products
* @version 1.0 2011-01-17 initial release
* @since 2011-01-17
*/
public class TestRegexFindInsensitive
{
/**
* Regex pattern we look for embedded in big string. By default case-sensitive.
*/
private static final Pattern pattern = Pattern.compile( "\\p{Lower}+", Pattern.CASE_INSENSITIVE );
/**
* test harness
*
* @param args not used
*/
public static void main( String[] args )
{
final String lookIn = "apple pear 66 banana Orange LEMON pomegranATE ";
final Matcher m = pattern.matcher( lookIn );
while ( m.find() )
{
final int gc = m.groupCount();
for ( int i = 0; i <= gc; i++ )
{
out.println( i + " : " + m.group( i ) );
}
}
}
}