0Pricing
Ruby Academy · บทเรียน

การแยกวิเคราะห์และการจัดรูปแบบ

strftime และ strptime

การแยกวิเคราะห์และการจัดรูปแบบ เป็นบทเรียน Ruby Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ruby Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ruby Academy มีบทเรียนทั้งหมด 4 บทเรียน

การจัดรูปแบบด้วย strftime

strftime แปลง Time หรือ Date เป็นสตริงที่จัดรูปแบบแล้ว โดยใช้คำสั่งจัดรูปแบบที่ขึ้นต้นด้วย %

t = Time.new(2026, 5, 30, 14, 5, 9)
puts(t.strftime('%Y-%m-%d'))
puts(t.strftime('%H:%M:%S'))

คำสั่งวันที่ที่ใช้บ่อย

คำสั่งวันที่ที่มีประโยชน์:

  • %Y ปี 4 หลัก, %y ปี 2 หลัก
  • %m หมายเลขเดือน, %B ชื่อเดือนแบบเต็ม
  • %d วันในเดือน, %j วันที่นับจากต้นปี
t = Time.new(2026, 5, 30)
puts(t.strftime('%B %d, %Y'))
puts(t.strftime('%y/%m/%d'))

คำสั่งเวลาที่ใช้บ่อย

คำสั่งนาฬิกาที่มีประโยชน์:

  • %H รูปแบบ 24 ชั่วโมง, %I รูปแบบ 12 ชั่วโมง
  • %M นาที, %S วินาที
  • %p AM/PM
t = Time.new(2026, 5, 30, 14, 30)
puts(t.strftime('%I:%M %p'))
puts(t.strftime('%H:%M'))

วันในสัปดาห์และชื่อเรียก

%A คือชื่อวันในสัปดาห์แบบเต็ม ส่วน %a คือชื่อย่อ %b คือชื่อเดือนแบบย่อ

t = Time.new(2026, 5, 30)
puts(t.strftime('%A'))
puts(t.strftime('%a %b %d'))

การเติมช่องว่างและแฟล็ก

แทรกแฟล็กระหว่าง % กับคำสั่ง: - เอาการเติมช่องว่างออก, 0 เติมด้วยเลขศูนย์, _ เติมด้วยช่องว่าง

t = Time.new(2026, 5, 5, 9, 0)
puts(t.strftime('%-d/%-m'))
puts(t.strftime('%H:%M'))

ผลลัพธ์ ISO 8601

สำหรับประทับเวลาที่ใช้งานร่วมกันระหว่างระบบได้ ให้ใช้ iso8601 หรือรูปแบบ %FT%T%z ISO 8601 เป็นมาตรฐานสำหรับส่วนต่อประสานโปรแกรมประยุกต์

require 'time'
t = Time.new(2026, 5, 30, 14, 0, 0, '+00:00')
puts(t.utc.iso8601)

การแยกวิเคราะห์ด้วย Date.parse

Date.parse อ่านรูปแบบสตริงวันที่ที่ใช้กันทั่วไปได้หลายแบบ และคาดเดาโครงสร้างให้ สะดวกแต่ไม่เคร่งครัด

require 'date'
puts(Date.parse('2026-05-30'))
puts(Date.parse('30 May 2026'))

การแยกวิเคราะห์ด้วย Time.parse

เรียกใช้ time เพื่อเพิ่ม Time.parse ซึ่งอ่านการประทับเวลาแบบเต็ม รวมถึงนาฬิกา

require 'time'
t = Time.parse('2026-05-30 14:30:00')
puts(t.hour)
puts(t.min)

การแยกวิเคราะห์แบบเคร่งครัดด้วย strptime

เมื่อคุณทราบรูปแบบที่แน่นอน ให้ใช้ strptime ซึ่งใช้คำสั่งเดียวกับ strftime และล้มเหลวเมื่อข้อมูลนำเข้าไม่ตรงรูปแบบ จึงปลอดภัยกว่า

require 'date'
d = Date.strptime('30/05/2026', '%d/%m/%Y')
puts(d.year)
puts(d.month)

strptime สำหรับ Time

Time.strptime แยกวิเคราะห์การประทับเวลาตามรูปแบบที่ทราบ แล้วแปลงเป็น Time

require 'time'
t = Time.strptime('2026-05-30 14:05', '%Y-%m-%d %H:%M')
puts(t.hour)
puts(t.min)

parse เทียบกับ strptime

หลักการโดยทั่วไป:

  • ใช้ parse สำหรับข้อความที่ยืดหยุ่นและผู้ใช้ป้อนเอง
  • ใช้ strptime เมื่อรูปแบบตายตัวและคุณต้องการปฏิเสธข้อมูลอื่นทั้งหมด
require 'date'
puts(Date.parse('May 30 2026').iso8601)
puts(Date.strptime('2026-05-30', '%Y-%m-%d').iso8601)

ตรวจสอบความเข้าใจ

คำสั่งใดสร้างค่ารูปแบบ 24 ชั่วโมงที่เติมเลขศูนย์ใน strftime

ทบทวน: การแยกวิเคราะห์และการจัดรูปแบบ

คุณสามารถแปลงไปมาระหว่างสตริงกับวันที่ได้:

  • strftime จัดรูปแบบด้วยคำสั่ง %
  • %Y %m %d %H %M %S %A %B และแฟล็กต่าง ๆ
  • parse ยืดหยุ่น ส่วน strptime เคร่งครัด
  • ใช้ iso8601 สำหรับผลลัพธ์ที่เหมาะกับส่วนต่อประสานโปรแกรมประยุกต์
require 'date'
puts(Date.strptime('2026-05-30', '%Y-%m-%d').strftime('%A, %B %-d'))

คำถามที่พบบ่อย

บทเรียน “การแยกวิเคราะห์และการจัดรูปแบบ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การแยกวิเคราะห์และการจัดรูปแบบ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ruby Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ruby Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การแยกวิเคราะห์และการจัดรูปแบบ”

strftime และ strptime คุณปฏิบัติ Ruby Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ruby Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ruby Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “การแยกวิเคราะห์และการจัดรูปแบบ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Ruby Academy นี้ได้ไหม

ได้ บทเรียน Ruby Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. คลาสเวลาและวันที่
  2. การแยกวิเคราะห์และการจัดรูปแบบ
  3. การคำนวณเวลา
  4. เขตเวลา
← กลับไปที่ Ruby Academy