문자로 시작하는 단어와 0 문자 이상이 아닌 모든 특수 문자 (기본적으로 C++ 변수에 사용할 수있는 이름)가없는 모든 행을 필터링해야합니다.정규 표현식 Unix 쉘 스크립트
egrep '^[a-zA-Z][a-zA-Z0-9]*'
이는 "AB10" "A"로 단어를 잘 작동하지만 그것은 또한 "b.b"와 같은 단어가 포함되어 있습니다. 나는 표현의 끝에 * 문제가 있다는 것을 이해한다. *를 + (하나 이상)로 바꾸면 한 글자 만 포함 된 단어는 건너 뜁니다. 따라서 도움이되지 않습니다.
편집 : 정확해야합니다. 위에서 설명한대로 여러 단어로 줄을 찾고 싶습니다. 그들은 모두 설명 된 조건에 맞는, 그리고 라인은 문자로 시작하지 않는 하나 개 이상의 단어를 포함로
int = 5;
cout << "hello";
//some comments
이 경우는 위의 모든 라인을 인쇄해야합니다 예를 들면 다음과 같습니다. 라인을 가정
여기에서 문제는 ^는 줄의 시작을 의미하지만 단어가 들어있는 줄에는 관심이 있습니다. 나는 편집을 제안한다. – JXG