วันอาทิตย์ที่ 26 กุมภาพันธ์ พ.ศ. 2560

3.3 การจัดการข้อความ

3.3 การจัดการข้อความ

การจัดการข้อความเป็นสิ่งจำเป็นพื้นฐานที่ทุกโปรแกรมภาษาจะต้องมีฟังก์ชันให้ใช้ โปรแกรมภาษาไพธอนมีฟังก์ชันเหล่านี้เช่นเดียวกัน คำสั่งด้านการจัดการข้อความมีไว้เพื่อนำไปใช้ในการแสดงผล ทั้ง ภาษา XML หรือ HTML หรือใช้ในการติดต่อกับฐานข้อมูล     เป็นต้น การจัดการข้อความของภาษาไพธอนมีคำสั่งให้เรียกใช้เป็นจำนวนมาก แต่ที่จะนำมากล่าวในบทนี้ มีเฉพาะที่จำเป็นต้องใช้เท่านั้น ได้แก่ คำสั่งในการเปรียบเทียบข้อความ  การเชื่อมคำ การแยกคำ การค้นหาคำ การค้นหาและแทนที่คำ การตัดคำ การจัดรูปแบบและตำแหน่งคำ และการประมวลผลคำ ซึ่งมีรายละเอียดแต่ละรายการ ดังนี้

1. การเปรียบเทียบข้อความ
                การเปรียบเทียบข้อความเป็นการดำเนินการทางตรรกะเบื้องต้น ที่ใช้ตัวดำเนินการเดียวกับการเปรียบเทียบการสร้างเงื่อนไขทั่ว ๆ ไป โดยใช้เครื่องหมาย ==  อยู่ตรงกลางระหว่างตัวแปรที่ต้องการเปรียบเทียบ หรือใช้  ตัวดำเนินการ  >  หรือ  <  เพื่อเปรียบเทียบข้อความ และใช้สำหรับการเรียงลำดับ ได้เช่นกัน ผลลัพธ์ที่ได้จะแสดงเป็นจริงหรือเท็จ   นอกจากนี้ยังสามารถใช้เมท็อด upper()  สำหรับแปลงข้อความตัวพิมพ์เล็กในภาษาอังกฤษให้เป็นตัวพิมพ์ใหญ่ หรือใช้ lower()  เพื่อแปลงข้อความตัวพิมพ์ใหญ่ให้เป็นตัวพิมพ์เล็ก ดังตัวอย่างภาพที่ 3.11 และ 3.12

 >>> lowerStr = 'abc'
>>> upperStr = 'ABC'
>>> lowerStr == upperStr
False
>>> lowerStr == upperStr.lower()
True
>>> lowerStr.upper() == upperStr
True
>>> if  lowerStr.upper() == upperStr :
        print lowerStr + " match " + upperStr
abc match ABC
>>> if  upperStr.lower() == lowerStr :
                                    print upperStr  + " match " + lowerStr
ABC match abc
ภาพที่ 3.11 แสดงคำสั่งและผลลัพธ์การเปรียบเทียบข้อความ
2. การเชื่อมข้อความ
                การเชื่อมข้อความ เป็นการนำเอาข้อความตั้งแต่ 2 ข้อความขึ้นไปมาต่อเรียงกันเป็นข้อความใหม่ โดยใช้ เมท็อด  join() หรือใช้เครื่องหมาย + หรือ +=  ในการเชื่อมข้อความหลาย ๆ ข้อความได้เช่นเดียวกัน ในกรณีที่ข้อมูลประเภทข้อความที่เก็บอยู่ในรูปแบบลิสต์  สามารถใช้การเชื่อมคำที่ทำงานได้เร็วกว่าด้วยคำสั่ง  join(wordList)  การเชื่อมข้อความจะเริ่มจากข้อความลำดับที่ 1 ไปจนลำดับสุดท้าย ดังตัวอย่างภาพที่ 3.13
 >>> word1 = "Python on Windows"
>>> word2 = "Python on Mac OS X"
>>> word3 = "Python on RedHat Linux"
>>> word4= "Python on Debian GNU/Linux"
>>> wordList = ["Python", "Java", "C", "C++", "C#"]
>>> print "Python  runs on  " + word1  + word2 + word3 + word4
Python  runs on  Python on WindowsPython on Mac OS XPython on RedHat LinuxPython on Debian GNU/Linux
>>> print  "Programming Language : " + "   " .join(wordList)
Programming Language : Python   Java   C   C++   C#
ภาพที่ 3.13  แสดงคำสั่งและผลลัพธ์ของการเชื่อมข้อความ
3. การแยกคำ
                การแยกคำเป็นการตัดคำออกมาจากประโยคโดยเฉพาะประโยคในภาษาอังกฤษที่ประกอบด้วยคำหลาย ๆ คำ ซึ่งแต่ละคำจะมีตัวช่องไฟ (เช่น space bar หรือ tab หรือการขึ้นบรรทัดใหม่) เป็นตัวคั่น โปรแกรมภาษาไพธอนมีเมท็อด split() เพื่อแยกคำแบบนั้นออกมา หรือใช้เมท็อด split() ที่มีอาร์กิวเมนต์  เช่น split(ตัวอักษรที่ต้องการแยก) ในกรณีที่ต้องการแยกแต่ละบรรทัดจากไฟล์ให้ใช้เมท็อด  splitline() โดยมีอาร์กิวเมนต์ระบุจำนวนบรรทัด เมื่อคำหรือบรรทัดที่แยกออกมาแล้ว ผลลัพธ์ที่ได้จะเก็บข้อมูลอยู่ในรูปของลิสต์ ดังตัวอย่างภาพที่ 3.14 
 >>> sentence = "I say my darling, you were wonderful tonight"
>>> paragraph =  "It's late in the evening.\n\
She's wondering what clothes to wear.\n\
She puts on her make up.\n\
And brushes her long blonde hair.\n\
And then she asks me.\n\
Do I look alright.\n\
And I say yes, you look wonderful tonight."
>>> name = "Somchai, Somsak, Somkid, Somsri, Sompong, Somjai"
>>> print sentence.split()
['I', 'say', 'my', 'darling,', 'you', 'were', 'wonderful', 'tonight']
>>> print name.split(', ')
['Somchai', 'Somsak', 'Somkid', 'Somsri', 'Sompong', 'Somjai']
>>> print paragraph.splitlines(1)
["It's late in the evening.\n", "She's wondering what clothes to wear.\n", 'She puts on her make up.\n', 'And brushes her long blonde hair.\n', 'And then she asks me.\n', 'Do I look alright.\n', 'And I say yes, you look wonderful tonight.']


ภาพที่ 3.14 แสดงคำสั่งและผลลัพธ์การแยกคำ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น

Set MongoDB in the windows path environment

  Let’s set MongoDB in the windows environment in just a few steps. Step 1: First download a suitable MongoDB version according to your mach...