programing

빈 문자열 또는 0-값 문자열 테스트 중

muds 2023. 5. 31. 18:35
반응형

빈 문자열 또는 0-값 문자열 테스트 중

루비에 조건부로 변수를 설정하려고 합니다.변수가 0이거나 비어 있으면 설정해야 합니다(0 길이 문자열).저는 다음을 생각해 냈습니다.

variable = id if variable.nil? || (!variable.nil? && variable.empty?)

작동하는 동안 루비처럼 보이지는 않습니다.위의 내용을 좀 더 간결하게 표현하는 방법이 있습니까?

두 번째 절은 다음이 필요하지 않습니다.!variable.nil?체크—평가가 해당 지점에 도달하면,variable.nil단락으로 인해 잘못된 것으로 보장됩니다.

이 정도면 충분합니다.

variable = id if variable.nil? || variable.empty?

Ruby on Rails로 작업하는 경우 에서는 다음과 같은 문제를 해결합니다.

개체가 거짓이거나 비어 있거나 공백 문자열인 경우 개체가 비어 있습니다.예를들면,""," ",nil,[],그리고.{}모두 비어 있습니다.

당신이 레일즈에 있다면,.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

반응형