私は[[$文字列の場合は[-ZA-Z0-9] 最初の文字がない場合は、次の機能バッシュの正規表現の比較の問題
checkFormat()
{
local funcUserName=$1
if [[ "$funcUserName" != [a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9] ]];then
echo "1"
else
echo "0"
fi
}
if [[ $string != [a-zA-Z0-9]* ]]
のみtrueを返す必要があります!= [-はZa - Z0-9] {5}]]
決してtrueを返します。
if [[ $string != [a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9] ]]
私がしたいように返します。 これはなぜですか?
コードは、ユーザー名が5文字で英数字、すなわち Joe12または12345で、%$ 134ではないことを確認することです。
bashのバージョンは4.2.37
サンプルの入力を含めてください(良いか悪いかを問わず)。がんばろう。 – shellter
実際にあなたのreg exで何を確認したいですか?いくつかの例を挙げてください –
これはどれも正規表現です。グロブと呼ばれる別の種類のパターンです。彼らは似たように見えますが、同じではありません。 –