Bash:
การดึงข้อมูลย่อยออกมา
วิธีการ:
นี่คือความรู้เกี่ยวกับการสกัดส่วนย่อยของสตริงใน Bash:
# ใช้ ${string:start:length}
text="The quick brown fox"
substring=${text:4:5}
echo $substring # แสดงผล 'quick'
# ความยาวเริ่มต้นคือส่วนที่เหลือของสตริง
substring=${text:16}
echo $substring # แสดงผล 'fox'
# ดัชนีเริ่มต้นเป็นลบ (จากปลายสตริง)
substring=${text: -3}
echo $substring # แสดงผล 'fox'
ลงลึก
Bash เคยจัดการกับสตริงมาอย่างยาวนาน การสกัดส่วนย่อยของสตริงเป็นเทคนิคเก่าแก่ แต่ยังคงเป็นมือที่ยอดเยี่ยม ก่อนที่จะมีเครื่องมือที่ซับซ้อน, เราเพียงแค่มีการขยายพารามิเตอร์ – ไวยากรณ์ ${}
– และมันยืนหยัดผ่านการทดสอบของเวลา
มีทางเลือกอื่นหรือไม่? แน่นอน awk
, cut
, และ grep
สามารถสับและหั่นสตริงได้ในแบบของตัวเอง แต่สำหรับงานที่รวดเร็ว, ไม่ต้องเพิ่มกระบวนการ, วิธีการในตัวของ Bash มีประสิทธิภาพ
ในเรื่องของการดำเนินการ, Bash จับส่วนย่อยของสตริงได้โดยไม่มีอุปสรรค ไม่สนใจว่าภายในสตริงของคุณมีอะไร: ข้อความ, ตัวเลข, อิโมจิยูนิคอร์น — อะไรก็ตาม แค่ให้จุดเริ่มต้นและสิ้นสุด, มันจะตัดชิ้นนั้นออกมาอย่างไม่ลังเล
ดูเพิ่มเติม
ลงลึกลงไปอีกและตรวจสอบลิงค์เหล่านี้:
- คู่มือ Bash เกี่ยวกับการขยายพารามิเตอร์:
man bash
และค้นหาข้อมูล Parameter Expansion - การลงลึกใน
awk
และgrep
: คู่มือ Awk และ คู่มือ Grep - ภาพรวมที่กว้างขึ้นเกี่ยวกับการจัดการสตริงใน Bash: คู่มือการจัดการสตริง Bash