I can hardly believe it but split()
doesn't work on the .
character:
String createDate = '01.2.2013';
String[] cd = createDate.split('.');
System.assertEquals(3, cd.size()); // Boom!
Tried with '\.'
but it also doesn't work.
Salesforce Stack Exchange is a question and answer site for Salesforce administrators, implementation experts, developers and anybody in-between. It only takes a minute to sign up.
Sign up to join this communityThe separator string used in the split method is a regular expression and "." is a special character in regular expressions.
The regular expression for a literal "." is "\."
However "\" is also used to escape characters when expressing Strings in Apex, and so this character too needs escaping:
String[] cd = createDate.split('\\.');
The documentation provides an interesting example, if you need to use "\" as the separator:
List<String> parts = filename.split('\\\\');