[ruby] 루비 배열 : % w 대 % W
차이점은 무엇입니까?
답변
% w는 작은 따옴표 ''
(변수 보간 없음, 이스케이프 시퀀스 수가 적음)와 같이 인용하고 % W는 큰 따옴표와 같습니다 ""
.
irb(main):001:0> foo="hello"
=> "hello"
irb(main):002:0> %W(foo bar baz #{foo})
=> ["foo", "bar", "baz", "hello"]
irb(main):003:0> %w(foo bar baz #{foo})
=> ["foo", "bar", "baz", "\#{foo}"]
답변
% W 대 % w에 대해 찾은 응용 프로그램 :
greetings = %W(hi hello #{"how do you do"})
# => ["hi", "hello", "how do you do"]
답변
% W는 일반적인 큰 따옴표 대체를 수행합니다. % w는 그렇지 않습니다.
답변
오래된 게시물이지만 질문이 계속 나오고 답변이 항상 명확하게 보이지는 않습니다. 자, 여기 내 생각이 있습니다.
% w 및 % W는 배열과 관련된 일반 구분 입력 유형의 예입니다 . % q, % Q, % r, % x 및 % i를 포함하는 다른 유형이 있습니다.
대문자와 소문자의 차이점은 작은 따옴표와 큰 따옴표의 기능에 액세스 할 수 있다는 것입니다. 작은 따옴표와 소문자 % w를 사용하면 코드 보간 (예 : # {someCode}) 및 작동하는 제한된 범위의 이스케이프 문자 (예 : \, \ n)가 없습니다. 큰 따옴표와 대문자 %로 우리는 W 않는 이러한 기능에 액세스 할 수 있습니다.
사용 된 구분자는 열린 괄호뿐만 아니라 모든 문자가 될 수 있습니다. 위의 예를 사용하여 효과를 확인하십시오.
% w의 예제와 전체 목록, 이스케이프 문자 및 구분 기호에 대한 자세한 내용은 http://cyreath.blogspot.com/2014/05/ruby-w-vs-w-secrets-revealed를 참조하십시오. .html
표
답변
퍼센트 문자열에 대한 설명서 : http://ruby-doc.org/core-2.2.0/doc/syntax/literals_rdoc.html#label-Percent+Strings
답변
%W
%Q
예를 들어와 같이 큰 따옴표로 묶인 배열 요소에 사용됩니다 .
foo = "!"
%W{hello world #{foo}} # => ["hello", "world", "!"]
%w
같은 작은 따옴표 배열 요소에 사용 %q
됩니다.
%w(hello world #{foo})
# => ["hello","world", "\#{foo}"]
답변
array = %w(a b c d)
동일
array = ["a", "b", "c", "d"]
%w
문자열에 따옴표의 바로 가기 기호입니다!