From ed6bb14c07965001275989cc220d39fbb434423a Mon Sep 17 00:00:00 2001 From: Ivan Reshetnikov Date: Sun, 18 Dec 2022 11:29:45 +0500 Subject: [PATCH] Problem 193: valid phone numbers --- problems/193-valid-phone-numbers/file.txt | 4 ++++ problems/193-valid-phone-numbers/main.sh | 2 ++ problems/193-valid-phone-numbers/readme.md | 26 ++++++++++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 problems/193-valid-phone-numbers/file.txt create mode 100755 problems/193-valid-phone-numbers/main.sh create mode 100644 problems/193-valid-phone-numbers/readme.md diff --git a/problems/193-valid-phone-numbers/file.txt b/problems/193-valid-phone-numbers/file.txt new file mode 100644 index 0000000..e68ee0b --- /dev/null +++ b/problems/193-valid-phone-numbers/file.txt @@ -0,0 +1,4 @@ +987-123-4567 +123 456 7890 +(123) 456-7890 +0(001) 345-0000 diff --git a/problems/193-valid-phone-numbers/main.sh b/problems/193-valid-phone-numbers/main.sh new file mode 100755 index 0000000..9340aaf --- /dev/null +++ b/problems/193-valid-phone-numbers/main.sh @@ -0,0 +1,2 @@ +#!/bin/bash +grep -E "^([[:digit:]]{3}-|\([[:digit:]]{3}\) )[[:digit:]]{3}-[[:digit:]]{4}$" file.txt diff --git a/problems/193-valid-phone-numbers/readme.md b/problems/193-valid-phone-numbers/readme.md new file mode 100644 index 0000000..d195b09 --- /dev/null +++ b/problems/193-valid-phone-numbers/readme.md @@ -0,0 +1,26 @@ +# 193. Valid Phone Numbers + +Given a text file file.txt that contains a list of phone numbers (one per line), +write a one-liner bash script to print all valid phone numbers. + +You may assume that a valid phone number must appear in one of the following two formats: +(xxx) xxx-xxxx or xxx-xxx-xxxx. (x means a digit) + +You may also assume each line in the text file must not contain leading or trailing white spaces. + +## Example: + +Assume that file.txt has the following content: + +``` +987-123-4567 +123 456 7890 +(123) 456-7890 +``` + +Your script should output the following valid phone numbers: + +``` +987-123-4567 +(123) 456-7890 +```