AaAa
문자열을 사용합시다. 나는 a
의 일치하려는 :grep/egrep 모든 연산자와 일치하지 않는 별 연산자
$ echo AaAa | grep -o a
a
a
그래서 그냥 첫 번째 모든 경기를 인쇄하고 있지 않습니다. 내가 얻을 a
후 별을 추가하면
$ echo AaAa | grep -o 'a*'
$
다음 왜 그렙 출력하지 모든 경기가이 시간을 했습니까? 대체되었다
$ echo AaAa | sed 's/a*/x/g'
xAxAx
문자열 :
$ echo AaAa | grep 'a*'
AaAa
그것이 내가 sed
을 사용 일치해야 얼마나 많은 일치 보려면 : 나는 우리가 라인 전체를 인쇄 -o
옵션을 제거하는 경우가 있기 때문에 일치 알고 x
은 grep -o
이 인쇄되어 있어야합니다.
- 일치의 시작에서 널 (null) 문자열
a
제로 시간은 - 첫 번째
a
- 이
a
이유는 다음 두 번째 인쇄되지 않았던 다음과 같이 그래서 경기는 ?
$ echo AaAa | grep -o 'a*'
a
a
$
편집
위는 GNU의 그렙으로 이루어졌다 2.5.1 다음은 GNU 그렙 (grep)로 여전히 didn를 2.6.3
$ echo AaAa | grep -o 'a*'
a
a
$
공지 것으로 이루어졌다 ' 첫 번째 null 문자열을 자체 행에 인쇄합니다. 이 새로운 릴리스에서는 버그가 부분적으로 수정 된 것 같습니다. 위의 sed
예제와 같이 null 문자열도 일치해야하지 않습니까?
try echo AaAa | grep a. * – Philip
파일/폴더와 일치하는 인용 부호가없는'*'를 사용하고 있습니다. –
흥미 롭습니다. 싱글 쿼트 문자열을 사용하는 GNU grep 2.5.1 (OSX 10.7.5)에서는이를 재현 할 수 있지만 GNU grep 2.10 (Ubuntu 12.04)에서는 재현 할 수 없습니다. 정규 표현식'a +'는 두 시스템 모두에서 두 개의 일치를 반환합니다. – whereswalden