Strings
Split and Join
split turns a string into a List<String>. join collapses a list back into one string with a separator.
Program
Play the program to split a CSV and re-join with a dash.
string_split.dart
Replay: real traced execution (multi-file project)
void main() {
var csv = 'red,green,blue';
var parts = csv.split(',');
var joined = parts.join('-');
print(joined);
}
csv ← red,green,blue
1void main() {2 var csv = 'red,green,blue';3 var parts = csv.split(',');values this stepred,green,bluecsvparts ← [red, green, blue]
2var csv = 'red,green,blue';3var parts = csv.split(',');4var joined = parts.join('-');values this step[red, green, blue]partsred,green,bluecsvjoined ← red-green-blue
3var parts = csv.split(',');4var joined = parts.join('-');5print(joined);values this stepred-green-bluejoined[red, green, blue]partsprint(joined);
4 var joined = parts.join('-');5 print(joined);6}outputred-green-bluevalues this stepred-green-bluejoined
Follow the Pieces
csvstarts asred,green,blue.split(',')cuts the string at each comma.partsbecomesred,green, andblue.join('-')puts dashes between the parts.- The program prints
red-green-blue. | step | value | | --- | --- | | csv | red,green,blue | | parts |red,green,blue| | joined | red-green-blue |
split
`split(',')` cuts on each comma.
join
`join('-')` inserts a dash between elements.
round-trip
Splitting and rejoining changes the separator.
Exercise: string_split.dart
Reproduce red-green-blue, then trace how split creates red, green, blue and join changes the separator to dashes.