Luk*_*kap 3 linux shell naming-conventions variable-names
#check if the name is valid
function myfunc()
{
#check "${1}"
#echo "valid/invalid"
}
#these should return valid
myfunc "my_number"
myfunc "my_number1"
#these should return ivalid
myfunc "1my_number"
myfunc "1my _number"
myfunc "my number"
myfunc "my_number?"
Run Code Online (Sandbox Code Playgroud)
等变量名只能有字母,数字(但不能在开头),...和java的所有规则一样......
我可以使用任何功能吗?我不想重新发明轮子......
将变量名称与正则表达式匹配,如下所示:
myfunc() {
if [[ "$1" =~ ^[a-z][a-zA-Z0-9_]*$ ]]
then
echo "$1: valid"
else
echo "$1: invalid"
fi
}
Run Code Online (Sandbox Code Playgroud)