ในบทความนี้ เราจะเรียนรู้วิธีแก้ปัญหาตามข้อกำหนดด้านล่าง
ข้อกำหนดปัญหา − เราได้รับสตริง ต้องนับจำนวนคำในสตริง
วิธีที่ 1 − ใช้ split() function
ฟังก์ชัน Split แบ่งสตริงเป็นลิสต์ iterable ด้วย space เป็น delimiter ถ้าใช้ split() โดยไม่ระบุ delimiter จะใช้ space เป็น default delimiter
ตัวอย่าง
test_string = "Tutorials point is a learning platform"
# original string
print("The original string is:", test_string)
# ใช้ split() function
res = len(test_string.split())
# จำนวนคำทั้งหมด
print("The number of words in string are:", str(res))
ผลลัพธ์
The original string is: Tutorials point is a learning platform The number of words in string are: 6
วิธีที่ 2 − ใช้ regex module
ที่นี่ฟังก์ชัน findall() ใช้นับจำนวนคำในประโยคที่มีในโมดูล regex
ตัวอย่าง
import re
test_string = "Tutorials point is a learning platform"
# original string
print("The original string is:", test_string)
# ใช้ regex (findall()) function
res = len(re.findall(r'\w+', test_string))
# จำนวนคำทั้งหมด
print("The number of words in string are:", str(res))
ผลลัพธ์
The original string is: Tutorials point is a learning platform The number of words in string is: 6
วิธีที่ 3 − ใช้ sum() + strip() + split() function
ที่นี่เราตรวจสอบคำทั้งหมดในประโยคที่กำหนดและบวกพวกเขาโดยใช้ sum() function
ตัวอย่าง
import string
test_string = "Tutorials point is a learning platform"
# printing original string
print("The original string is:", test_string)
# ใช้ sum() + strip() + split() function
res = sum([i.strip(string.punctuation).isalpha() for i in test_string.split()])
# no of words
print("The number of words in string are:", str(res))
ผลลัพธ์
The original string is: Tutorials point is a learning platform The number of words in string are: 6
ตัวแปรทั้งหมดประกาศในขอบเขตท้องถิ่นและอ้างอิงของพวกเขาเห็นในรูปด้านบน
สรุป
ในบทความนี้ เราได้เรียนรู้ 3 วิธีนับจำนวนคำในประโยค: split(), regex findall(), และ sum+strip+split วิธี split() เรียบง่ายที่สุด