In C # se voglio dividere un string
di un altro string
Devo fare qualcosa del genere:
testString.Split(new string[] { "anotherString" }, StringSplitOptions.None);
Dalla String.Split
documentazione MSDN in sovraccarico possiamo vedere l'implementazione e perché tale la chiamata deve essere fatta.
Provenendo da Python , è difficile per me capire correttamente perché è necessaria una tale chiamata. Voglio dire che potrei usare Regex.Split
per ottenere una sintassi simile rispetto all'implementazione di Python ma dovrei farlo a costo di meno prestazioni (tempo di setup) per qualsiasi cosa semplice .
Quindi in fondo, la mia domanda è: perché diavolo non possiamo semplicemente fare:
testString.Split("anotherString");
Nota che non sto suggerendo alcun prototipo né implementazione. Capisco perché non è possibile implementare la versione precedente considerando l'API corrente. Il mio obiettivo era capire perché una tale API avrebbe potuto essere creata considerando il beneficio che la sintassi sopra riportata comporta. A partire da ora, flessibilità sembra essere l'obiettivo dell'attuale String.Split
che ha senso, ma ad essere onesti ho davvero pensato che ci fosse un qualche tipo di guadagno da qualche parte. Credo di essermi sbagliato.