라인이 XXXX 형식인지 확인하는 방법

라인이 XXXX 형식인지 확인하는 방법

난 이미 가지고 있는데 :

$p =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]$

하지만 이것은 숫자에만 적용됩니다. 크기에 관계없이 단어를 포함하도록 어떻게 만들 수 있습니까?

예를 들어:

this.should.definitely.work  

유효할 것이고

this1.should.definitely.work2 

그것도 유효할 거에요

답변1

귀하의 경우에 가장 정확한 정규식 패턴은 다음과 같습니다.

^[^[:space:].]+\.[^[:space:].]+\.[^[:space:].]+\.[^[:space:].]+$

답변2

나는 이 해결책을 찾았습니다.

foo="this1.should.definitely.work2"
[[ $foo =~ ^.*\..*\..*\..*$ ]] && echo "match" 

답변3

[[:alnum:]]문자와 숫자를 나타내는 클래스를 사용할 수 있습니다 .

$p =~ ^[[:alnum:]]+\.[[:alnum:]]+\.[[:alnum:]]+\.[[:alnum:]]+$

관련 정보