루비에서 구분 된 문자열을 분할하여 배열로 변환하는 방법은 무엇입니까?
나는 끈이있다
"1,2,3,4"
그리고 그것을 배열로 변환하고 싶습니다 :
[1,2,3,4]
어떻게?
>> "1,2,3,4".split(",")
=> ["1", "2", "3", "4"]
또는 정수의 경우 :
>> "1,2,3,4".split(",").map { |s| s.to_i }
=> [1, 2, 3, 4]
또는 이후 버전의 루비 (> = 1.9-Alex가 지적한대로) :
>> "1,2,3,4".split(",").map(&:to_i)
=> [1, 2, 3, 4]
"1,2,3,4".split(",")
문자열로
"1,2,3,4".split(",").map { |s| s.to_i }
정수로
대한 String Integer
공간이없는 등String
arr = "12345"
arr.split('')
output: ["1","2","3","4","5"]
대한 String Integer
공간으로와String
arr = "1 2 3 4 5"
arr.split(' ')
output: ["1","2","3","4","5"]
대한 String Integer
공간이없는 등Integer
arr = "12345"
arr.split('').map(&:to_i)
output: [1,2,3,4,5]
문자열
arr = "abc"
arr.split('')
output: ["a","b","c"]
설명 :
arr
-> 어떤 작업을 수행 할 문자열입니다.split()
->는 입력을 분할하여 배열로 저장하는 방법입니다.''
또는' '
또는','
-> 필요로되는 값이 소정의 문자열로부터 삭제된다.
쉼표와 같이 구분 기호가있는 문자열을 변환하는 가장 간단한 방법은 split 메소드를 사용하는 것입니다.
"1,2,3,4".split(',') # "1", "2", "3", "4"]
루비 문서 에서 split 메소드를 사용하는 방법에 대한 자세한 정보를 찾을 수 있습니다
str을 구분 기호에 따라 하위 문자열로 나누고이 하위 문자열의 배열을 반환합니다.
pattern이 String 인 경우 str을 분할 할 때 해당 내용이 분리 문자로 사용됩니다. 패턴이 단일 공백 인 경우 str은 공백으로 분할되고 선행 공백과 연속 공백 문자는 무시됩니다.
패턴이 정규 표현식 인 경우 str은 패턴이 일치하는 위치로 나뉩니다. 패턴이 길이가 0 인 문자열과 일치 할 때마다 str은 개별 문자로 분할됩니다. 패턴에 그룹이 포함 된 경우 해당 일치 항목도 배열에 반환됩니다.
패턴을 생략하면 $; 사용. 만약 $; nil (디폴트 값), str은` '가 지정된 것처럼 공백에서 분리됩니다.
limit 매개 변수를 생략하면 후행 널 필드가 억제됩니다. limit이 양수이면 최대 개수의 필드가 반환됩니다 (제한이 1이면 전체 문자열이 배열의 유일한 항목으로 반환 됨). 음수 인 경우 반환되는 필드 수에 제한이 없으며 후행 null 필드는 표시되지 않습니다.
"12345".each_char.map(&:to_i)
each_char
기본적으로 동일합니다 split('')
: 문자열을 문자 배열로 나눕니다.
흠, 나는 원래 질문에 문자열에 쉼표가 포함되어 있다는 것을 알았으므로 내 대답은 실제로 도움이되지 않습니다 ;-( ..
'IT story' 카테고리의 다른 글
jQuery가 Ajax 호출이 종료되기 전에 대기하도록하려면 어떻게해야합니까? (0) | 2020.04.21 |
---|---|
텍스트 변경 리스너의 안드로이드 (0) | 2020.04.21 |
PowerShell을 사용한 재귀 파일 검색 (0) | 2020.04.21 |
Windows 배치 파일을 사용하여 텍스트 파일의 각 줄을 어떻게 반복합니까? (0) | 2020.04.21 |
HQL에서 제한 쿼리를 어떻게 수행합니까? (0) | 2020.04.21 |