From c9b6b9a5ca082fe7c1b6f58d7713f785a9eb6a5c Mon Sep 17 00:00:00 2001 From: Martial Simon Date: Mon, 15 Sep 2025 01:08:27 +0200 Subject: add: graphs et rushs --- rushs/tinyprintf/alphanum/alphanum.sh | 53 +++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100755 rushs/tinyprintf/alphanum/alphanum.sh (limited to 'rushs/tinyprintf/alphanum/alphanum.sh') diff --git a/rushs/tinyprintf/alphanum/alphanum.sh b/rushs/tinyprintf/alphanum/alphanum.sh new file mode 100755 index 0000000..e4c5aee --- /dev/null +++ b/rushs/tinyprintf/alphanum/alphanum.sh @@ -0,0 +1,53 @@ +#!/bin/sh + +letters() +{ + grepped=$(echo "$1" | grep -E "^[a-zA-Z]+$") + [ "$1" = "$grepped" ] && return 0 || return 1 +} + +empty() +{ + if echo "$1" | grep -qE '^[[:space:]]+$'; then + return 0 + fi + return 1 +} + +digit() +{ + grepped=$(echo "$1" | grep -E "^[0-9]$") + [ "$1" = "$grepped" ] && return 0 || return 1 +} + +number() +{ + grepped=$(echo "$1" | grep -E "^[1-9][0-9]+$") + [ "$1" = "$grepped" ] && return 0 || return 1 +} + +alph() +{ + grepped=$(echo "$1" | grep -E "^[a-zA-Z0-9]+$") + [ "$1" = "$grepped" ] && return 0 || return 1 +} + +while IFS='' read -r str; do + if [ -z "$str" ]; then + echo it is empty + continue + elif letters "$str"; then + echo "it is a word" + elif number "$str"; then + echo "it is a number" + elif digit "$str"; then + echo "it is a digit" + elif empty "$str"; then + echo "it is empty" + elif alph "$str"; then + echo "it is an alphanum" + else + echo "it is too complicated" + exit + fi +done -- cgit v1.2.3