특정 기호와 숫자만 포함된 행 가져오기

특정 기호와 숫자만 포함된 행 가져오기

아래 파일에는 "+"와 같은 기호와 숫자, 문자가 포함된 레코드만 필요합니다.

285627
AA283244
278178##
295456+
asdfasdf{
asdfasdfasdf

아래 코드를 시도했지만 모든 기록을 제공합니다.

grep -E '[a-zA-Z0-9]+' temp.txt 

문자, 숫자 또는 기호가 포함된 레코드만 필요합니다 +. 레코드에 다른 문자가 포함되어 있으면 폐기해야 합니다. 레코드 번호 3과 5는 결과에 나타나지 않아야 합니다.

285627
AA283244
295456+
asdfasdfasdf

답변1

문자가 아닌 문자(문자, 숫자 또는 )가 포함된 +줄을 제거합니다.

grep -v '[^[:alnum:]+]' file

답변2

+캐릭터 목록에서 누락되었습니다. 다음 더하기 기호는 [...]수량자(이전에 언급한 문자 그룹 중 하나 이상)입니다.

또한 이를 줄의 ^시작과 끝으로 묶어야 합니다 . 그렇지 않으면 from 과 같이 각 줄의 일부도 일치하게 됩니다 .$278178278178##

이 시도,

grep -E '^[a-zA-Z0-9+]+$' temp.txt 

관련 정보