Java String split avec multicaractère délimiteur

Je suis assez nouveau à Java, et j'ai pensé que cela a fonctionné la même qu'avec les autres langues.

Pour une chaîne de caractères:

String line = "3::Daniel::Louis||##2::Leon: the Professional::1994||6::Jean::Reno||7::Gary::Oldman||8::Natalie::Portman||##3::Scarface::1983||9::Al::Pacino||10::Michelle::Pfeiffer";

Je veux diviser à chaque ||##.

Mais:

for(String s : line.split("||##")) {
    System.out.println("|"+s+"|");
 }

retourne:

||
|3|
|:|
|:|
|D|
|a|
|n|
|i|

... etc.

Je m'attendais:

3::Daniel::Louis

Leon: the Professional

... etc.

Ce que je fais mal?

PS: Sont Abel Ferrara "le Roi de New York" ou de Walter Hill "les Rues de Feu" dans la liste ;)?
ha ha ha, juste au hasard des trucs que j'ai reçu de imdb top 200 liste

OriginalL'auteur David Homes | 2012-09-11