Ruby에서 "=~" 연산자는 무엇입니까?
나는 이것을 스크린 캐스트에서 보았고 그것이 무엇인지 알아낼 수 없었습니다. 참조 시트는 일반 패턴 일치 연산자로 다른 연산자와 함께 쌓입니다.
문자열을 정규식과 일치시킵니다.
'hello' =~ /^h/ # => 0
일치하는 항목이 없으면 반환 nil
됩니다. 유효하지 않은 인수를 전달하면(즉, 왼쪽 또는 오른쪽이 올바르지 않음) 를 던지 TypeError
거나 반환 false
합니다.
에서 루비 문서 :
str =~ obj => fixnum or nil
일치 - obj가 Regexp인 경우 str과 일치하는 패턴으로 사용하고 일치가 시작되는 오프셋 위치를 반환하거나 일치하는 항목이 없으면 nil을 반환합니다. 그렇지 않으면 obj.=~를 호출하여 str을 인수로 전달합니다. Object의 기본값 =~는 false를 반환합니다.
"cat o' 9 tails" =~ /\d/ #=> 7
"cat o' 9 tails" =~ 9 #=> false
음, 참조가 정확합니다. "이 정규식과 일치" 연산자입니다.
if var =~ /myregex/ then something end
다른 답변이 이미 언급했듯이 =~
정규식 대 문자열 일치 연산자입니다.
참고: =~
연산자는 가환성이 아닙니다.
아직 첫 번째 형식만 보았으므로 ruby doc 사이트의 아래 참고 사항을 고려하십시오.
str =~ regexp
다른 답변에 사용:
참고:
str =~ regexp
와 동일하지 않습니다regexp =~ str
. 명명된 캡처 그룹에서 캡처된 문자열은 두 번째 경우에만 지역 변수에 할당됩니다.
다음은 두 번째 양식에 대한 문서입니다. 링크
정규식 문자열 일치. 자세한 연산자 목록은 다음과 같습니다. http://phrogz.net/programmingruby/tut_expressions.html#table_7.1
정규 표현식 문자열 일치:
url =~ /google.com/이면 true를 넣습니다.
'=~'는 '일치한다'로 읽을 수 있습니다.
나는 이것이 정규식과 함께 사용되는 패턴 일치 연산자라고 생각합니다.
ReferenceURL : https://stackoverflow.com/questions/3025838/what-is-the-operator-in-ruby
'IT이야기' 카테고리의 다른 글
자바 인트로스펙션과 리플렉션 (0) | 2021.10.26 |
---|---|
Bitbucket에서 Github으로 HG 프로젝트 미러링 (0) | 2021.10.26 |
Spring 3.0 MVC 바인딩 Enums 대소문자 구분 (0) | 2021.10.26 |
python pip에 대한 설치 순서를 지정하는 방법 (0) | 2021.10.26 |
Python 하위 프로세스의 표준 입력 (0) | 2021.10.26 |