ฉันมีอาร์เรย์ Ruby ที่มีค่าสตริงบางค่า ฉันจำเป็นต้อง:
- ค้นหาองค์ประกอบทั้งหมดที่ตรงกับเพรดิเคตบางส่วน
- เรียกใช้องค์ประกอบที่ตรงกันผ่านการเปลี่ยนแปลง
- ส่งคืนผลลัพธ์เป็นอาร์เรย์
ตอนนี้โซลูชันของฉันมีลักษณะดังนี้:
def example
matchingLines = @lines.select{ |line| ... }
results = matchingLines.map{ |line| ... }
return results.uniq.sort
end
มีวิธี Array หรือ Enumerable ที่รวมการเลือกและแมปเป็นคำสั่งเชิงตรรกะเดียวหรือไม่?