HackerRank Filter an Array with Patterns problem solution YASH PAL, 31 July 2024 In this HackerRank Filter an Array with Patterns problem solution We now transition to some basic examples of bash scripting for the purpose of text processing and data munging. In this challenge, we practice reading and filtering an array. Task You are given a list of countries, each on a new line. Your task is to read them into an array and then filter out (remove) all the names containing the letter ‘a’ or ‘A’. Input Format The input format consists of a list of country names, each on a separate line. The only characters present in the country names will be upper or lower-case characters and hyphens. Output Format From the given list, remove the names that contain ‘a’ or ‘A’ in them. If there are no names left after removing these characters, you should display a blank line. Problem solution. readarray -t country echo "${country[@]/*[aA]*/}"|sed 's/^s*//g' Second solution. while read n do a=("${a[@]}" "$n") done temp=( ${a[@]/*a*/} ) echo ${temp[@]/*A*/} Third solution. array=() while read line; do array=(${array[@]} $line) done filtered=(${array[@]/*a*/}) echo ${filtered[@]} Fourth solution. iter=0 while [ 1 ] do read line if [ -n "$line" ]; then array[$((iter++))]="$line" else break fi done for item in ${array[@]} do if [ "$item" = "$(echo $item | grep -wE "[^aA]*")" ]; then echo -n "$item " fi done coding problems linux shell