문자열의 숫자

문자열의 숫자

일부 표준 유효성 검사 문자열을 사용하고 있습니다. R- 및 proj_nm을 변수로, project_cd를 숫자로, 임의의 설명으로 시작해야 합니다(예: R-${PROJ_NM}-[Numbers]-anything).

if [[ $var == "R-"${PROJ_NM}"-"[[:digit:]]"-"* ]] ; then echo "Naming convention is in correct format" else echo "Not in correct format" exit 1 fi

내가 얻은 출력이 올바른 형식이 아닙니다.

답변1

하나 이상의 전화번호가 필요한 경우(번호를 말함)에스[[:digit:]][[:digit:]]), 그러면 2개, [[:digit:]][[:digit:]][[:digit:]]3개 등이 필요합니다 .

if [[ $var == "R-"${PROJ_NM}"-"[[:digit:]][[:digit:]]"-"* ]] ; then 
    echo "Naming convention is in correct format"
else 
    echo "Not in correct format" 
fi

하지만 견적을 조금 단순화할 수 있습니다.

if [[ $var == "R-${PROJ_NM}-"[[:digit:]][[:digit:]]"-"* ]] ; then 
    echo "Naming convention is in correct format"
else 
    echo "Not in correct format" 
fi

또는 최신 bash 버전에서는 정규식을 사용할 수 있습니다.

if [[ $var =~ ^R-${PROJ_NM}-[0-9]+- ]] ; then 
    echo "Naming convention is in correct format"
else 
    echo "Not in correct format" 
fi

관련 정보