이것은 출력을 생성하지 않습니다. 어째서?
$ echo 'this 1 2 3' | grep '\d\+'
그러나 이것들은 :
$ echo 'this 1 2 3' | grep '\s\+'
this 1 2 3
$ echo 'this 1 2 3' | grep '\w\+'
this 1 2 3
답변
grep
의 기본 모드는 (iirc) POSIX 정규식 \d
이며 pcre입니다. 당신도 통과 할 수 -P
펄 같은 regexps ‘에 대한, GNU 그렙에, 또는 사용하는 [[:digit:]]
대신 \d
.
daenyth@Bragi ~ $ echo 1 | grep -P '\d'
1
daenyth@Bragi ~ $ echo 1 | grep '[[:digit:]]'
1
답변
이 시도 $ echo 'this 1 2 3' | grep '[0-9]\+'