양쪽에 콜론을 사용하여 1~50자(이상적으로는 어떤 길이든 가능)의 영숫자 문자열을 grep하는 방법 - 일반적인 결과는 해당 문자열을 포함하는 모든 행입니다 :shopping:
. 지금까지 아래 코드가 있지만(몇 가지 변형을 시도했습니다) 작동하지 않습니다.
grep ':[[:alnum:]]{1,100}:' ~/x.txt
답변1
이를 위해서는 확장 정규식을 활성화해야 합니다.
grep -E ':[[:alnum:]]+:' ~/x.txt
답변2
기본 정규 표현식을 사용하면 다음과 같이 작성할 수 있습니다.
grep ':[[:alnum:]]\{1,100\}:' ~/x.txt
( 또는 \{
의 반대 ) 는 표준적이고 이식 가능하며 실제로 및 에 해당하는 BRE는 일반적으로 및 로 작성됩니다. 그러나 이는 표준적이고 이식 가능하므로 이러한 경우 정규식을 더 읽기 쉽게 만들 수 있으므로 이를 사용하는 것이 좋습니다.\+
\?
+
?
\{
\{1,\}
\{0,1\}
grep -E
답변3
확장 정규식을 사용하고 있으므로 -E 옵션을 사용해야 합니다.
grep -E ':[[:alnum:]]{1,100}:' ~/x.txt
답변4
아무도 언급하지 않았기 때문에 를 사용할 수도 있습니다 egrep
. 이는 와 동일하다고 이해합니다 grep -E
.
egrep ':[[:alnum:]]{1,100}:' ~/x.txt