You do not need to hide ^ , you can use \\d+ to match multiple digits and \\. for a literal point, and you don't need multiple calls to replaceAll . For example,
private static String removeSignsFromName(String name) { return name.replaceAll("^\\d+\\.", ""); }
What I tested as
public static void main(String[] args) { System.out.println(removeSignsFromName("23.Piano+trompet")); }
And received
Piano+trompet
Elliott frisch
source share