In this article we will provide you bash script code to split a string using a delimiter. You can use this code as it is in your existing projects. Common delimiters are , space _ - $ # etc.
Code Example –
1. split() function
#!/bin/bash
split() {
IFS=$'\n' read -d "" -ra arr <<< "${1//$2/$'\n'}"
echo "${arr[@]}"
}
sanitized_string=$(split "apples,oranges,pears,grapes" ",")
echo $sanitized_string
# Output:
# apples oranges pears grapes
2. If delimiter is _
split "Ironman_Thor_Hulk_Captain America" "_" # Output # Ironman Thor Hulk Captain America
3. If delimiter is $ – You will need to escape \$
split "Elon\$Jeff\$Bill\$Ambani\$Mark" "$" # Output: # Elon Jeff Bill Ambani Mark
4. To print items in separate lines
#!/bin/bash
nl_split() {
IFS=$'\n' read -d "" -ra arr <<< "${1//$2/$'\n'}"
printf '%s\n' "${arr[@]}"
}
nl_split "All words will print in separate lines" " "
# Output -
# All
# words
# will
# print
# in
# separate
# lines