Your regular expression doesn't match that string. Here is an explanation of the regular expression
^ Start of string. Matches successfully.
\\s* Zero or more whitespace. Matches the empty string.
[0-9]+ One or more digits. Matches "70".
\\s+ One or more whitespace. Fails to match.
The character after "70" is a hyphen and a hyphen is not a whitespace character so the match fails and no replacement is made. To fix it you can put a hyphen in the character class:
address = address.replace("^\\s*[0-9-]+\\s+", "");
When the hyphen is in a character class it has a special meaning (a range of characters), except in two cases:
- when it is at the beginning or the end of the character class
- when it is escaped with a backslash (but note that two backslashes are required in a Java string literal).