2010-05-09 9 views
4

Fondamentalement, je veux être en mesure d'utiliser string.Split(char[]) sans réellement définir un tableau char en tant que variable distincte. Je sais que dans d'autres langues, vous pouvez faire string.split([' ', '\n']); ou quelque chose comme ça. Comment ferais-je cela en C#?C# Déclaration de tableau implicite

Répondre

1

Il est pas joli, mais: string.Split(new char[] { ' ', '\n' });

+1

Notez que dans C# 3, vous pouvez rendre cela légèrement plus joli en choisissant le "char". Le compilateur établira que new [] {x, y, z} signifie "nouveau tableau du meilleur type commun de x, y et z". –

+0

Génial, bon à savoir. Je suppose que c'est possible à cause du travail d'inférence de type fait pour LINQ. –

1

vous pouvez utiliser cette surcharge:

public String [] Split(params char [] separator) 

comme ceci:

yourstring.Split(' ', '\n') 
8

Voici une façon vraiment agréable de le faire:

string[] s = myString.Split("abcdef".ToCharArray()); 

Ce qui précède est e est équivalent à:

string[] s = myString.Split('a', 'b', 'c', 'd', 'e', 'f');