그래서 다음과 같은 이메일이 포함된 파일이 있습니다.
[email protected]:theirUsername
[email protected]:theirUsername
...
PA로 시작하고 임의의 6개 문자, @gmail.com, 다음과 같은 이메일을 추출하고 싶습니다. 사용자 이름은 사용자 이름이 무엇인지는 중요하지 않습니다.
나는 이것을 사용하려고합니다 :
egrep "^PA[a-zA-Z0-9-.+_]{6}@gmail.com:[a-zA-Z0-9-.+_]+"
grep으로 시도했는데 여전히 작동하지 않는데 작동하지 않나요? 오랫동안 egrep에 정규식을 사용하지 않았고 매뉴얼을 읽어도 도움이 되지 않았습니다. 여기서 제가 뭘 잘못하고 있는 걸까요? 올바른 입력 방법은 무엇입니까?
답변1
정말로 "임의의 6개 문자"만 원하고 그 뒤에 오는 내용은 신경 쓰지 않는다면 :
쉽게 단순화할 수 있습니다. :
뒤에 오는 내용을 일치시키려고 하지 말고 .
PA 뒤의 문자에 a를 사용하세요.
egrep '^PA.{6}@gmail.com:'
예를 들어
% cat f
hello
[email protected]:jgkfd
[email protected]
[email protected]:
% egrep '^PA.{6}@gmail.com:' f
[email protected]:jgkfd