ทดสอบว่าสตริงเริ่มต้นด้วยหรือลงท้ายด้วยสตริงอื่น


91

ฉันจะตรวจสอบได้อย่างไรว่าสตริงเริ่มต้นหรือลงท้ายด้วยสตริงที่กำหนด ดูเหมือนจะไม่มีวิธีการใด ๆ ในตัว (หรืออาจเป็นเพียง IDE ที่ฉันใช้ซึ่งไม่ได้แสดง: RDE)

คำตอบ:


170

มีวิธีการในตัว:

"String".start_with? "S" # true
"String".end_with? "4" # false

11
ฉันคิดว่าพวกเขาต้องตั้งชื่อให้สื่อความหมายมากกว่านี้ :)
Barmar

11
ขอพระเจ้าอวยพร Matz และ Ruby แม้ว่าฉันคิดว่าพวกเขาควรได้รับการตั้งชื่อstarts_with?และends_with?.
Joshua Pinter

5
@ จอชพินเตอร์ start_with? สอดคล้องกับฟังก์ชั่นอื่น ๆ เช่น eql? และรวม? - ฉันคิดว่าเป็นคำถาม "สตริง start_with หรือไม่" แทนที่จะเป็นคำสั่ง "The string start_with"
DavidC

5
พอใช้ แต่ถ้าคุณคิดว่าคุณใช้มันอย่างไรในการเขียนโค้ดมันก็เหมือนกับข้อความหลังของคุณนั่นคือ"The string".starts_with?
Joshua Pinter

6
@DavidC และสำหรับเงื่อนไขคุณจะไม่พูดอะไรเช่น "ถ้าสตริงขึ้นต้นด้วย?" คุณจะพูดว่า "ถ้าสตริงขึ้นต้นด้วย?"
Joshua Pinter

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.