2017-12-24 12 views
-2

이 표현식은 정수와 일치하는 표현식이라는 튜토리얼에서 보았습니다.패턴? (-) + ([0-9])

정수와 일치하는 방식이 무엇인지 이해할 수없고 ()을 사용하여 -[0-9]을 사용하는 것을 이해하지 못했습니다. ?은 문자 0 또는 1에 해당하는 것으로 알고 있습니다. [0-9]는 한 자리 숫자에 해당합니다. 나머지 부분을 어떻게 이해할 수 있습니까?

+1

원래 튜토리얼 몇 가지 상황에 맞는 링크를 표시 shopt -s extglobread about it in the manual.

참조로 수 있습니다. – John1024

답변

1

?(-)-의 1 회 또는 0 회 발생을 의미하므로이 패턴은 음수를 처리합니다.

+([0-9])은 하나 이상의 숫자가 있음을 의미합니다. 이 패턴은 모든 길이의 정수를 처리합니다.

괄호는 +? 연산자가 영향을받는 요소를 둘러 쌉니다.

+0

이 작문 패턴을 읽으려는 참고가 있습니까? 정규 표현식입니까? 하나 이상의 숫자가 하나라도 써야한다면 [0-9] +라고 쓰여졌을 것입니다. – Vicky

+0

아니,이 스타일에 대한 언급은 없지만 괄호로 수학 경험을 섞은 정규식 치트 시트를 20 초간 본 것처럼 보입니다. 저자의 편입니다. -? [0-9] + 내가 사용하는 정규식입니다. – JasonB

+3

마치 [확장 glob] (http://mywiki.wooledge.org/glob#extglob) 패턴처럼 보입니다. 표준 정규 표현식과 동일한 표현력을 가지고 있지만 구문이 매우 다릅니다. –