เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

grepl & grep

ในรูปแบบพื้นฐาน regular expressions สามารถใช้ตรวจสอบได้ว่า pattern ที่กำหนดนั้นมีอยู่ใน character string หรือ vector ของ character strings หรือไม่ โดยใช้ฟังก์ชันดังนี้

  • grepl() คืนค่า TRUE เมื่อพบ pattern ใน character string ที่ตรงกัน
  • grep() คืนค่าเป็น vector ของ index ของ character strings ที่มี pattern ที่ต้องการ

ทั้งสองฟังก์ชันต้องการอาร์กิวเมนต์ pattern และ x โดย pattern คือ regular expression ที่ต้องการจับคู่ และ x คือ character vector ที่จะค้นหาคู่ที่ตรงกัน

ในแบบฝึกหัดนี้และแบบฝึกหัดถัดไป จะได้ฝึกค้นหาและจัดการกับ character vector ของที่อยู่อีเมล โดย vector emails ถูกกำหนดไว้ให้แล้ว เริ่มทำตามคำแนะนำได้เลย!

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

R ระดับกลาง

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ grepl() เพื่อสร้าง vector ของค่า logical ที่บอกว่าที่อยู่อีเมลแต่ละรายการมีคำว่า "edu" อยู่หรือไม่ แล้วแสดงผลลัพธ์
  • ทำแบบเดียวกันด้วย grep() แต่คราวนี้ให้บันทึก index ที่ได้ลงในตัวแปร hits
  • ใช้ตัวแปร hits เพื่อกรองเฉพาะอีเมลที่มีคำว่า "edu" ออกจาก vector emails

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# The emails vector has already been defined for you
emails <- c("[email protected]", "[email protected]", "[email protected]",
            "invalid.edu", "[email protected]", "[email protected]")

# Use grepl() to match for "edu"


# Use grep() to match for "edu", save result to hits


# Subset emails using hits
แก้ไขและรันโค้ด