"^[0-9]+.+[0-9]$"(R)의 의미

"^[0-9]+.+[0-9]$"(R)의 의미

(이것이 R 프로그래밍이다)

다음 샘플 질문을 참조할 수 있습니다.

dates <- c("12/15/10", "12-2012", "12.2014", "1995")
grep(pattern = "^[0-9]+.+[0-9]$", x = dates) 

도움을 주셔서 미리 감사드립니다! !

답변1

이것암호이 질문은 어떤 언어로 쓰여 있는지 모르기 때문에 의미가 없습니다.

정규식은 ^[0-9]+.+[0-9]$줄 시작 부분의 하나 이상의 숫자, 그 뒤에 하나 이상의 다른 문자(숫자 포함 가능) 및 줄 끝의 마지막 숫자와 일치하는 POSIX 확장 정규식입니다.

표현식의 구성 요소는 다음과 같습니다.

  • ^, 표현식을 줄의 시작 부분에 고정합니다.
  • [0-9]+는 집합에 있는 하나 이상의 문자( 0-9숫자)와 일치합니다.
  • .+, 모든 유형의 문자 중 하나 이상과 일치합니다.
  • [0-9], 이는 단일 숫자와 일치합니다.
  • $, 표현식을 줄 끝에 고정합니다.

이 표현식과 일치하는 가장 짧은 줄의 예:

1a1

질문 코드에서 본 날짜의 모든 예는 추가로 표현식과 일치합니다. 다음은 표현식의 어느 부분이 sed문자열의 어느 부분과 일치(사용)하는지 보여줍니다.

$ printf '%s\n' "12/15/10" "12-2012" "12.2014" "1995" | sed -E 's/^([0-9]+)(.+)([0-9])$/(\1)(\2)(\3)/'
(12)(/15/1)(0)
(12)(-201)(2)
(12)(.201)(4)
(19)(9)(5)

관련 정보