In this **HackerRank Sed command #4 problem solution** we have given n lines of credit card numbers, mask the first 1 digits of each credit card number with an asterisk (i.e., *) and print the masked card number on a new line. Each credit card number consists of four space-separated groups of four digits. For example, the credit card number 1234 5678 9101 1234 would be masked and printed as **** **** **** 1234.

**Input Format**

Each line contains a credit card number in the form dddd dddd dddd dddd, where d denotes a decimal digit (i.e., 0 through 9). There are a total of n lines of credit card numbers.

**Constraints**

1 <= n <= 20; note that the value of n does not matter when writing your command.

**Output Format**

For each credit card number, print its masked version on a new line.

## Problem solution.

sed -e s/'([0-9]{4}) ([0-9]{4}) ([0-9]{4}) ([0-9]{4})/**** **** **** 4/'

## Second solution.

sed -e 's/[0-9]+ [0-9]+ [0-9]+ ([0-9]+)/**** **** **** 1/'

## Third solution.

sed -E 's/[0-9][0-9][0-9][0-9] /**** /g'

## Fourth solution.

sed -r 's/([0-9]{4}s){3}([0-9]{4})/**** **** **** 2/'