문자열의 최대 및 최소 길이를 제한하는 방법은 무엇입니까?

문자열의 최대 및 최소 길이를 제한하는 방법은 무엇입니까?

"없음"은 출력이 없음을 의미합니다.

묻다:파이프의 최소 및 최대 길이를 제한하는 방법? (최소값: x>=3자, 최대값: x<=32자)

입력하다:

echo 12 | MAGIC

산출:

nothing

입력하다:

echo 123 | MAGIC

산출:

123

입력하다:

echo 123456789012345678901234567890123 | MAGIC

산출:

nothing

입력하다:

echo 12345678901234567890123456789012 | MAGIC

산출:

12345678901234567890123456789012

답변1

이 작업을 수행해야 합니다.

echo 123 | awk 'length >= 3 && length <= 32'

여러 줄을 연결하면 3~32자의 줄이 인쇄됩니다.

답변2

하지만데이비드 중 awk하나목록에 추가하는 것이 가장 확실한 것입니다.

grep -xE '.{3,32}'

답변3

펄 사용:

perl -nle 'print if length() > 2 and length() < 33'

테스트 1:

echo "12345678901234567890123456789012" | \
perl -nle 'print if length() > 2 and length() < 33' 

산출:

12345678901234567890123456789012

테스트 2:

echo "123456789012345678901234567890123" | \
perl -nle 'print if length() > 2 and length() < 33'

산출:

<Nothing>

관련 정보