Use Matcher.appendReplacement() to match [a-zA-Z]+[0-9]+
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] argv) throws Exception {
CharSequence inputStr = "ab12 cd efg34 asdf 123";
String patternStr = "([a-zA-Z]+[0-9]+)";
Pattern pattern = Pattern.compile(patternStr);
Matcher matcher = pattern.matcher(inputStr);
StringBuffer buf = new StringBuffer();
boolean found = false;
while ((found = matcher.find())) {
String replaceStr = matcher.group();
matcher.appendReplacement(buf, "found<" + replaceStr + ">");
}
matcher.appendTail(buf);
String result = buf.toString();
System.out.println(result);
}
}
//found<ab12> cd found<efg34> asdf 123
Related examples in the same category