views:

170

answers:

2

Hi,

I have this String:

foo bar 567 baz

Now I want to add before each number the String num:.
So the result has to be:

foo bar num:567 baz

Also this has to work:

foo 73761 barbazboom!! 87
result:
foo num:73761 barbazboom!! num:87

The regex to search number is this: [0-9]+
But I want to replace the matching substring with num: + [the matching substring]

I now wrote an example with numbers, but an other example can be: add before each e-mail-address Email found:

I hope you can understand what I mean.
(Sorry for bad English, live in Belgium, 14 years old)

Thanks

+4  A: 
"foo bar 567 baz".replaceAll("(\\d+)", "num:$1");
dfa
+6  A: 

Make use of grouping. You can use the parentheses ( and ) to define groups and identify the group in the result by $n where n is the group index.

String string = "foo bar 567 baz";
String replaced = string.replaceAll("(\\d+)", "num:$1");
BalusC
Thanks, a lot. Clear anwser.
Martijn Courteaux