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

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

ใช้รูปแบบอ้างอิง

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

รูปแบบอ้างอิง

Go ไม่ได้ใช้รหัสอย่าง %Y แต่ใช้ เวลาอ้างอิง เดียวเป็นแม่แบบ:

Mon Jan 2 15:04:05 MST 2006

คุณเขียนวันที่ตามรูปแบบนี้ทุกประการเพื่อระบุรูปแบบที่ต้องการ

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 9, 5, 0, 0, time.UTC)
    fmt.Println(t.Format("2006-01-02"))
}

เหตุใดจึงเป็นตัวเลขเหล่านั้น

ค่าอ้างอิงเรียงลำดับขึ้นไป: 1=เดือน, 2=วัน, 3=ชั่วโมง, 4=นาที, 5=วินาที, 6=ปี, 7=เขตเวลา ดังนั้น 1 2 3 4 5 6 จึงหมายถึง 2 มกราคม เวลา 03:04:05 ปี 2006

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 14, 5, 9, 0, time.UTC)
    fmt.Println(t.Format("15:04:05"))
}

การจัดรูปแบบวันที่

ผสมส่วนต่าง ๆ ของรูปแบบเข้ากับข้อความและตัวคั่นตามต้องการ เพื่อสร้างข้อความวันที่ได้ทุกรูปแบบ

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 9, 0, 0, 0, time.UTC)
    fmt.Println(t.Format("02/01/2006"))
}

องค์ประกอบที่มีชื่อ

ใช้ Jan หรือ January สำหรับชื่อเดือน และใช้ Mon หรือ Monday สำหรับชื่อวันในสัปดาห์

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 9, 0, 0, 0, time.UTC)
    fmt.Println(t.Format("Monday, January 2, 2006"))
}

นาฬิกาแบบ 12 ชั่วโมงและ AM/PM

ใช้ 3 สำหรับนาฬิกาแบบ 12 ชั่วโมง และใช้ PM เป็นตัวบ่งชี้ช่วงเวลา

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 14, 30, 0, 0, time.UTC)
    fmt.Println(t.Format("3:04 PM"))
}

ค่าคงที่ของรูปแบบที่มีมาให้

แพ็กเกจนี้มีรูปแบบสำเร็จรูป เช่น time.RFC3339 และ time.Kitchen ให้ใช้ คุณจึงไม่ต้องจดจำ digits

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 9, 0, 0, 0, time.UTC)
    fmt.Println(t.Format(time.RFC3339))
}

การแยกวิเคราะห์สตริง

time.Parse(layout, value) แปลงข้อความเป็น time.Time โดยรูปแบบจะอธิบายโครงสร้างของข้อมูลขาเข้าโดยใช้เวลาอ้างอิงเดียวกัน

package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse("2006-01-02", "2026-05-30")
    fmt.Println(t.Year(), t.Month())
}

รูปแบบต้องตรงกับข้อมูลขาเข้า

หากรูปแบบไม่ตรงกับโครงสร้างของข้อมูลขาเข้า Parse จะคืนค่าข้อผิดพลาด ควรตรวจสอบค่าดังกล่าวเสมอ

package main

import (
    "fmt"
    "time"
)

func main() {
    _, err := time.Parse("2006-01-02", "30/05/2026")
    if err != nil {
        fmt.Println("parse failed")
    }
}

การแยกวิเคราะห์เวลาที่มีนาฬิกา

ใส่ฟิลด์เวลาทั้งในรูปแบบและข้อมูลขาเข้า เพื่อเก็บค่าชั่วโมงและนาที

package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse("2006-01-02 15:04", "2026-05-30 09:05")
    fmt.Println(t.Hour(), t.Minute())
}

การแปลงไปกลับ

Parse และ Format เป็นการดำเนินการที่ย้อนกลับกันได้ คุณสามารถอ่านการประทับเวลา นำไปใช้งาน แล้วจัดรูปแบบกลับเป็นข้อความได้

package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse(time.RFC3339, "2026-05-30T09:00:00Z")
    fmt.Println(t.Format("Jan 2, 2006"))
}

ข้อผิดพลาดที่พบบ่อย: ใช้ค่าอ้างอิงผิด

ผู้เริ่มต้นมักเขียน "2020-12-31" เป็นรูปแบบ ซึ่งไม่ถูกต้อง: รูปแบบต้องใช้ ค่าอ้างอิง (2006, 01, 02) ไม่ใช่วันที่ตัวอย่างของคุณ

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Date(2026, 5, 30, 0, 0, 0, 0, time.UTC)
    fmt.Println(t.Format("2006/01/02"))
}

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

สตริงใดคือวันที่ในรูปแบบอ้างอิงของ Go

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

คุณเข้าใจการจัดการข้อความเวลาแล้ว:

  • รูปแบบใช้เวลาอ้างอิง 2006-01-02 15:04:05
  • Format สร้างสตริง ส่วน Parse อ่านสตริง
  • ใช้ค่าคงที่ที่มีมาให้ เช่น time.RFC3339 และตรวจสอบข้อผิดพลาดจากการแยกวิเคราะห์เสมอ
package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse("2006-01-02", "2026-05-30")
    fmt.Println(t.Format("Monday"))
}

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

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

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

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

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

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

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

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

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

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

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

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

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