반응형
비어 있거나 값이없는 문자열 [중복] 테스트
이 질문에 이미 답변이 있습니다.
Ruby에서 조건부로 변수를 설정하려고합니다. 변수가 nil이거나 비어 있으면 설정해야합니다 (0 길이 문자열). 나는 다음을 생각 해냈다.
variable = id if variable.nil? || (!variable.nil? && variable.empty?)
작동하는 동안 나에게는 루비처럼 보이지 않습니다. 위를 더 간결하게 표현하는 방법입니까?
두 번째 절은 !variable.nil?
검사 가 필요하지 않습니다. 평가가 해당 지점에 도달하면 variable.nil
거짓이 보장됩니다 ( 단락으로 인해 ).
이것으로 충분합니다.
variable = id if variable.nil? || variable.empty?
Ruby on Rails로 작업하는 경우 다음과 Object.blank?
같은 정확한 문제를 해결합니다.
객체가 거짓이거나 비어 있거나 공백 문자열이면 비어 있습니다. 예를 들어,
""
," "
,nil
,[]
, 및{}
모든 빈입니다.
Rails .blank에 있다면? 찾고있는 방법이어야합니다.
a = nil
b = []
c = ""
a.blank? #=> true
b.blank? #=> true
c.blank? #=> true
d = "1"
e = ["1"]
d.blank? #=> false
e.blank? #=> false
따라서 대답은 다음과 같습니다.
variable = id if variable.blank?
variable = id if variable.to_s.empty?
참고 URL : https://stackoverflow.com/questions/15988960/testing-for-empty-or-nil-value-string
반응형
'program story' 카테고리의 다른 글
GDB가 줄 사이를 예측할 수없이 점프하고 변수를“ (0) | 2020.09.20 |
---|---|
루비에서 send ()는 무엇을합니까? (0) | 2020.09.20 |
이보기는 제한되지 않습니다. (0) | 2020.09.20 |
설치 오류 : INSTALL_PARSE_FAILED_MANIFEST_MALFORMED? (0) | 2020.09.20 |
전송 연결에서 데이터를 읽을 수 없습니다. 기존 연결이 원격 호스트에 의해 강제로 닫혔습니다. (0) | 2020.09.20 |