+$는 이 줄과 일반적으로 무엇을 합니까?

+$는 이 줄과 일반적으로 무엇을 합니까?

이 코드 ^[a-zA-Z]+$가 있고 그 목적은 문자만 분리하는 것이며 +$를 추가한 후에만 작동하고 A33과 같은 것도 계산합니다. 내 질문은 +$의 역할/의미가 무엇입니까?

답변1

안에확장 정규식(예: shell 에서 지원하는 유형 bash) 은 +이전 표현식( [a-zA-Z]자체적으로 주어진 세트의 단일 문자와 일치함)의 수정자이며, 표현식이 적어도 한 번 일치해야 하지만 여러 번 일치할 수도 있습니다. 은 "줄 끝 앵커"입니다. 즉, $범위 또는 에서 비어 있지 않은 문자열 뒤에는 줄 끝 외에 다른 내용이 있을 수 없음을 의미합니다.a-zA-Z

마찬가지로 ^(표현식에 사용된 대로)는 선 시작 부분의 기준점입니다.

이 표현식은 행 끝에 비트를 허용하지 않기 A33때문에 문자열과 일치하지 않습니다 . 33그렇지 않은 경우 전체 표현식이 시작 하위 문자열 $과 일치하므로 표현식은 문자열과 일치합니다 . A아니요 +(하지만 있습니다 $). 그럴 것입니다.아니요AAA표현식에는 단일 문자만 허용되므로 문자열과 일치합니다 .

관련 정보