วิธีค้นหาตำแหน่งอักขระในสตริงใน r


คุณสามารถใช้วิธีการต่อไปนี้เพื่อค้นหาตำแหน่งของอักขระในสตริงใน R:

วิธีที่ 1: ค้นหาสถานที่ของแต่ละเหตุการณ์

 unlist(gregexpr(' character ', my_string))

วิธีที่ 2: ค้นหาตำแหน่งของการเกิดขึ้นครั้งแรก

 unlist(gregexpr(' character ', my_string))[1]

วิธีที่ 3: ค้นหาตำแหน่งของเหตุการณ์ครั้งล่าสุด

 tail(unlist(gregexpr(' character ', my_string)), n= 1 )

วิธีที่ 4: ค้นหาจำนวนครั้งทั้งหมด

 length (unlist(gregexpr(' character ', my_string)))

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ

วิธีที่ 1: ค้นหาสถานที่ของแต่ละเหตุการณ์

รหัสต่อไปนี้แสดงวิธีการค้นหาแต่ละตำแหน่งของอักขระ “a” ในสตริงที่กำหนด:

 #define string
my_string = ' mynameisronalda '

#find position of every occurrence of 'a'
unlist(gregexpr(' a ', my_string))

[1] 4 12 15

จากผลลัพธ์เราจะเห็นได้ว่าอักขระ “a” ปรากฏที่ตำแหน่ง 4, 12 และ 15 ของสตริง

วิธีที่ 2: ค้นหาตำแหน่งของการเกิดขึ้นครั้งแรก

รหัสต่อไปนี้แสดงวิธีการค้นหาตำแหน่งของอักขระ “a” ที่เกิดขึ้นครั้งแรกในสตริงที่กำหนด:

 #define string
my_string = ' mynameisronalda '

#find position of first occurrence of 'a'
unlist(gregexpr(' a ', my_string))[1]

[1] 4

จากผลลัพธ์เราจะเห็นได้ว่าอักขระ “a” ปรากฏครั้งแรกในตำแหน่งที่ 4 ของสตริง

วิธีที่ 3: ค้นหาตำแหน่งของเหตุการณ์ครั้งล่าสุด

รหัสต่อไปนี้แสดงวิธีการค้นหาตำแหน่งของอักขระ “a” ครั้งล่าสุดในสตริงที่กำหนด:

 #define string
my_string = ' mynameisronalda '

#find position of last occurrence of 'a'
tail(unlist(gregexpr(' a ', my_string)), n= 1 )
[1] 15

จากผลลัพธ์เราจะเห็นว่าการปรากฏครั้งสุดท้ายของอักขระ “a” อยู่ที่ตำแหน่ง 15 ของสตริง

วิธีที่ 4: ค้นหาจำนวนครั้งทั้งหมด

รหัสต่อไปนี้แสดงวิธีการค้นหาจำนวนครั้งทั้งหมดของอักขระ “a” ในสตริงที่กำหนด:

 #define string
my_string = ' mynameisronalda '

#find total occurrences of 'a'
length (unlist(gregexpr(' a ', my_string)))
[1] 3

จากผลลัพธ์เราจะเห็นได้ว่าอักขระ “a” ปรากฏ 3 ครั้งในสตริง

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่นๆ ใน R:

วิธีการต่อสตริงใน R
วิธีแปลงเวกเตอร์เป็นสตริงใน R
วิธีแปลงอักขระเป็นปัจจัยใน R

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *