텍스트에서 공백을 찾는 방법. 그렙을 사용하시겠습니까?

텍스트에서 공백을 찾는 방법. 그렙을 사용하시겠습니까?

텍스트에서 공백을 찾는 방법은 무엇입니까?

cat a.txt| grep ' '

또는

cat a.txt| grep '\s '

답변1

질문에 공백만 입력하려면 다음 명령을 사용하면 됩니다.

grep -e '^\s[^\s]' -e '[^\s]\s$' -e '[^\s]\s[^\s]' a.txt

또는 POSIX 변형의 경우:

grep -e '^ [^ ]' -e '[^ ] $' -e '[^ ] [^ ]' a.txt

또는 읽기 어려운 POSIX 변형:

grep '\(^\|[^ ]\)\ \([^ ]\|$)' a.txt

여러 개의 인접한 공백이 포함된 행을 제외하려는 경우 명시적으로 하나의 공백이 필요하고 앞뒤에는 공백이 필요하지 않습니다.

또한 모든 grep 버전이 '\s' 정규식 컨트롤을 지원하는 것은 아니라는 점도 주목할 가치가 있습니다.

답변2

내가 찾은 것 같아요:

grep  "\+[[:space:]]\+" a.xml

답변3

변형 2는 공백을 두 개만 찾습니다. 반대 방향으로 수행하면 '\s'두 변형 모두 작동합니다 .

이것을 직접 쉽게 테스트할 수 있는데 실제 문제는 무엇입니까?

관련 정보