Ruby에서 배열의 이름, 성, 중간 이름을 반환하기 위해 문자열을 반복하는 방법이 있습니까?

블랙 호카게

명령 줄 인터페이스에서 작업 중이며 웹 사이트를 스크랩하여 이름 목록을 반환하고 있습니다. HTML 출력의 이름, 중간 및 성을 구분하는 데 문제가 있습니다. 나는 이것을 다음과 같이 좁혔습니다.

name = doc.css("h2 a").text.strip.split.join(' ')

다음을 반환합니다.

Karina CAPS Jeffery M. CAPS Terry M. CAPS Zaid F. CAPS Abdalmahd CAPS Aziz CAPS Jason V. CAPS Patrick R. CAPS Nancy A. CAPS Henry L. CAPS Floyd CAPS

총 20 개의 이름이 있습니다.

성은 대문자로 유지 될 수 있지만 결국 색인 +1로 이름을 나열 할 것이므로 이름을 올바르게 구분해야합니다. 다음과 같은 코드로 :

@people.each.with_index(1) do |person, i|
  puts "#{i}. #{person.name}"
end

어떤 아이디어 ???

태드 만

이름을 추출하려는 경우 map일치하는 요소 만 사용할 수 있습니다 .

names = doc.css('h2 a').map { |e| e.text.strip }

어디 map당신이 최종 배열을 넣기 전에을 준비하기 위해 각 하나에 약간의 작업을 수행 할 수 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관