question: public static List < String > splitFileNames ( String fileNames ) { if ( fileNames == null ) return Collections . < String > emptyList ( ) ; List < String > result = new ArrayList < > ( ) ; for ( String file : fileNames . split ( "(?<!\\\\)," ) ) { result . add ( file . replaceAll ( "\\\\(?=,)" , "" ) ) ; } return result ; }
target:  Splits file names separated by comma character. File names can contain comma characters escaped by backslash '\'