org.springframework.batch.item.file.transform
Class RegexLineTokenizer

java.lang.Object
  extended by org.springframework.batch.item.file.transform.AbstractLineTokenizer
      extended by org.springframework.batch.item.file.transform.RegexLineTokenizer
All Implemented Interfaces:
LineTokenizer

public class RegexLineTokenizer
extends AbstractLineTokenizer

Line-tokenizer using a regular expression to filter out data (by using matching and non-matching groups). Consider the following regex which picks only the first and last name (notice the non-matching group in the middle):

 (.*?)(?: .*)* (.*) 
 
For the names: the output will be: An empty list is returned, in case of a non-match.

Author:
Costin Leau
See Also:
Matcher.group(int)

Field Summary
 
Fields inherited from class org.springframework.batch.item.file.transform.AbstractLineTokenizer
names
 
Constructor Summary
RegexLineTokenizer()
           
 
Method Summary
protected  List<String> doTokenize(String line)
           
 void setPattern(Pattern pattern)
          Sets the regex pattern to use.
 void setRegex(String regex)
          Sets the regular expression to use.
 
Methods inherited from class org.springframework.batch.item.file.transform.AbstractLineTokenizer
hasNames, isStrict, setFieldSetFactory, setNames, setStrict, tokenize
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RegexLineTokenizer

public RegexLineTokenizer()
Method Detail

doTokenize

protected List<String> doTokenize(String line)
Specified by:
doTokenize in class AbstractLineTokenizer

setPattern

public void setPattern(Pattern pattern)
Sets the regex pattern to use.

Parameters:
pattern - Regular Expression pattern

setRegex

public void setRegex(String regex)
Sets the regular expression to use.

Parameters:
regex - regular expression (as a String)


Copyright © 2013 SpringSource. All Rights Reserved.