답변
빠른 대답 : 일치하는 문자가 숫자 (문자, 숫자) 밑줄 (_
) 또는 별표 (*
)를 단일 문자로 구성된 문자열입니다.
세부 사항 :
- 는 "
\w
는"일반적으로 숫자 (대소 문자에 관계없이 문자, 숫자 등)를 의미한다 "모든 단어 문자"플러스 밑줄 (_) - 은 "
^
" "을 의미한다 앵커 "와"$
""앵커 "문자열의 끝에,이 경우 일치 항목은 문자열의 시작 부분에서 시작하여 문자열의 끝에서 끝나야 함을 의미합니다 . []
은 "문자 클래스에 포함 된 모든 문자와 일치"하는 문자 클래스를 의미합니다.
문자열은 특별한 표기가 파이썬 때문에 매우 어려운, (모든 백 슬래시 추가 백 슬래시로 이스케이프 될 필요가있을 것이다) 정규 표현식을 입력 할 수 있도록하는 것도 그 정상 언급 인용과 규칙을 탈출 가치가있는 모든 백 슬래시를 올바르게 해석 할 수있는 자체 특별 인용 규칙이 있으며 그 시작 부분에있는 "r
"이 사용됩니다.
참고 :는 일반적으로 별표 (*
)는 "0 또는 이전 것보다"를 의미하지만, 별표 (*)는 문자 클래스의 내부 때문에 위의 예에서는, 하지 그 의미를 가지고있다 그래서 그것은 그것의 "특별한 - 다움"을 잃는다.
이것은 necroposting이지만 이후의 독자를 위해서 \ w는 [^ a-zA-Z0-9_] 클래스의 python에 해당합니다. 여기에서 볼 수 있듯이 적어도 Python 2.7.x에서 3.4.y까지,'*'는 그것에 들어 가지 않습니다. 정규 표현식 클래스를 사용하면 [\ w *]는 리터럴 caracter로서 *의 쓸데없는 반복을 도입합니다 (즉, 클래스를 나타내는 대괄호 안에 포함되어 있으므로 특별한 의미가 없습니다). – Cbhihe
Python 3에서'\ w'의 정의는 기본적으로 유니 코드 문자 정의를 고려하므로'[^ a-zA-Z0-9_]'보다 훨씬 넓습니다. 자세한 내용은 https://docs.python.org/3/library/re.html#module-re를 참조하십시오. – Bevan
이 줄의 처음부터 줄의 끝까지 "Any number of word characters (letter, number, underscore)"까지.
일치하는 텍스트를 반환하려면 원 대괄호 (예 : "("및 ")")가 올바른지 확인하십시오. 대괄호 안에있는 이유는 확실하지 않습니다.
\ w는 0 자 이상의 영숫자와 밑줄을 나타냅니다. 귀하의 경우에 *는 문자 클래스 안에도, 그래서 [\ * ▼] [A-ZA-Z0-9_ *]의 모든 일치하는 것이다은을 참조하십시오 http://www.regular-expressions.info/reference.html
을
을합니다 (* 문자 그대로 해석됩니다) 인용문 :
\ d, \ w 및 \ s - 숫자, 단어 문자 및 공백과 일치하는 속기 문자 클래스. 캐릭터 클래스의 내부 및 외부에서 사용할 수 있습니다.
편집은 동일합니다 승 \ [A-ZA는-Z0-9_] 내가 후 * 또는 [] 주위 \을하기 때문에 이해가 안
위의 정규 표현식에 없습니다. '*'는 문자 클래스 내에 있기 때문에 클래스의 멤버가됩니다. –
주석에 대한 응답으로 수정 w는 이미 클래스이고 class 정의의 *는 의미가 없습니다.
exhuma가 말했듯이, \ w는 모든 단어 수준의 문자 (영숫자 인 Jonathan이 분명히 함)입니다. 이 대괄호에 있기 때문에
그러나이 일치합니다 :
- 하나의 영숫자 문자 또는
- 별표 (*)
그래서 전체 정규 표현식과 일치 :
을- 시작 부분은 줄입니다. (^) 하나의 영숫자 문자 또는 라인 ($)
의 말 뒤에 별표
blah
z <- matches this line
blah
또는
blah
* <- matches this line
blah
위의 \ w는 모든 단어를 의미합니다. 그래서 당신은 매개 변수 "= URL"당신은의 값으로 단어를 가질 수 있습니다 의미 아래
view.aspx?url=[\w]
의 맥락에서이를 사용할 수
\ w는 전체 단어가 아닌 단일 문자와 일치합니다. 실제로 전체 단어 (즉, 단일 문자 이상)를 일치 시키려면 +, * 또는 {n, m}과 같은 수량 기호가 필요합니다. –
- 1. 정규식에서 +와 *는 무엇을 의미합니까?
- 2. 정규 표현식 \ | (? = \ w =>)는 무엇을 의미합니까?
- 3. JS $는 무엇을 의미합니까?
- 4. new()는 무엇을 의미합니까?
- 5. "UIBackgroundTaskInvalid"는 무엇을 의미합니까?
- 6. "@ + id"는 무엇을 의미합니까?
- 7. `@ '는 파이썬에서 무엇을 의미합니까?
- 8. wp_verify_nonce()는 무엇을 의미합니까?
- 9. 파이썬에서 "*"는 무엇을 의미합니까?
- 10. SQL에서 #는 무엇을 의미합니까?
- 11. % *는 무엇을 의미합니까?
- 12. PHP에서 "&"는 무엇을 의미합니까?
- 13. JavaScript에서 []는 무엇을 의미합니까?
- 14. SQL에서 '?'는 무엇을 의미합니까?
- 15. "java 결과"는 무엇을 의미합니까?
- 16. "죽은 쇠고기"는 무엇을 의미합니까?
- 17. WinDbg에서 "Eclipsed"는 무엇을 의미합니까?
- 18. JApplet의 "J"는 무엇을 의미합니까?
- 19. base.OnPreInit (e)는 무엇을 의미합니까?
- 20. 서브에 대해 & @는 무엇을 의미합니까?
- 21. "java -classpath. :"는 무엇을 의미합니까?
- 22. $는 PHP에서 일반적으로 무엇을 의미합니까?
- 23. 스칼라에서 "<:"는 무엇을 의미합니까?
- 24. "& key"는 PHP에서 무엇을 의미합니까?
- 25. layout_height = "0dp"는 무엇을 의미합니까?
- 26. bash 스크립트의 [...]는 무엇을 의미합니까?
- 27. MSIL에서 [opt]는 무엇을 의미합니까?
- 28. "T : somevalue"는 무엇을 의미합니까?
- 29. el # {facesContext.externalContext.requestContextPath}는 무엇을 의미합니까?
- 30. Java에서 "SomeClass.this"는 무엇을 의미합니까?
당신이'R을 "^ \ *의 $ w"'의미합니까 ? –
Laurence의 의견에 따르면, 이것은 따옴표없이 특별한 의미가 없습니다. – foosion
안녕하세요. S.Lott : 숙제인지 어떻게 알 수 있습니까? –