articlewriting1

Xóa ký tự trong chuỗi python (strip ,lstrip, rstrip, replace )

Sức Khỏe & Làm Đẹp

Hướng dẫn xóa ký tự trong chuỗi python. Bạn sẽ học được tất cả các cách xóa ký tự trong chuỗi python bằng các phương thức có sẵn như strip ,lstrip, rstrip, replace trong bài viết này.

Chúng ta có 6 chiêu thức để xóa ký tự trong chuỗi python như sau :

  • Phương thức strip() : Xóa ký tự chỉ định trong chuỗi python ở cả hai đầu
  • Phương thức lstrip(): Xóa ký tự chỉ định ở đầu chuỗi python
  • Phương thức rstrip(): Xóa ký tự chỉ định ở cuối chuỗi Python
  • Phương thức replace() Xóa toàn bộ các ký tự chỉ định trong chuỗi python
  • Cắt (slice) chuỗi : Xóa ký tự đầu tiên và xóa ký tự cuối cùng trong chuỗi Python
  • Phương thức replace() : Xóa khoảng trắng trong chuỗi Python

Xóa ký tự chỉ định trong chuỗi python ở cả hai đầu | strip() trong python

Phương thức strip() trong python

Chúng ta sử dụng phương thức strip() trong python để xóa ký tự đầu tiên trong chuỗi ở cả hai đầu và tạo ra một chuỗi string mới.

Cú pháp sử dụng phương thức strip() như sau:

new_str = org_str. strip ( chars )Trong đó :

  • org_str là chuỗi ban đầu.
  • chars là tập hợp các ký tự muốn xóa ở cả hai đầu chuỗi org_str. Ví dụ như ta muốn xóa các ký tự a, x, 1 khỏi một chuỗi thì ta sẽ chỉ định charsax1 hoặc x1a hoặc 1ax đều được.
  • new_str là chuỗi kết quả sau khi đã xóa ký tự ở hai đầu chuỗi org_str.

Phương thức strip() sẽ tìm kiếm lần lượt từng ký tự trong đối số chars và xóa đi các ký tự giống nó ở cả hai đầu chuỗi org_str, và lưu kết quả tại một chuỗi mới.

Ví dụ, chúng ta xóa các ký tự ‘a’, ‘s’, ‘1’ ở hai đầu chuỗi ‘address1’ như sau:

org_str  =  "address1"
new_str1 = org_str.strip('as1')
new_str2 = org_str.strip('1sa')

print(new_str1)
print(new_str2)



Chúng ta cũng có thể xóa đi các dấu như dấu ., dấu ,, dấu ? từ hai đầu chuỗi python như sau:

org_str = "..Hello,.?."
print(org_str)
print(org_str.strip(".?,"))



Lưu ý là phương thức strip() KHÔNG làm thay đổi chuỗi ban đầu, mà chỉ xóa ký tự trong chuỗi ban đầu và lưu kết quả phép xóa trong một chuỗi mới mà thôi.

org_str  =  "address1"
print(org_str)

new_str1 = org_str.strip('as1')
print(new_str1)

print(org_str)




Lại nữa, phương thức strip() sẽ xóa lần lượt từng ký tự chỉ định trong đối số chars ở cả hai đầu và dừng lại tại vị trí xuất hiện ký tự đầu tiên khác với tất cả các ký tự chỉ định trong chars.

Do đó, phương thức strip() sẽ không thể xóa đi một ký tự nếu nó nằm giữa các ký tự không được chỉ định trong đối số chars. Ví dụ, các ký tự e ở hai đầu chuỗi sau sẽ bị xóa đi, trong khi ký tự e nằm giữa ký tự cb lại không thể bị xóa.

str1 =  "eabcebe"
print(str1.strip("e"))

Xóa khoảng trắng ở hai đầu chuỗi Python

Khi sử dụng phương thức strip() mà không chỉ định đối số chars, strip() sẽ tiến hành xóa mặc định các khoảng trắng ' ', tab \t hay ký tự xuống dòng \n nếu có ở cả hai đầu chuỗi ban đầu.

Lợi dụng tính chất này, chúng ta có thể sử dụng phương thức strip() để xóa khoảng trắng trong chuỗi Python ở hai đầu chuỗi, bằng cách lược bỏ đi đối số chars khi sử dụng.

Ví dụ cụ thể, các khoảng trắng ở đầu và cuối chuỗi sau sẽ bị xóa đi:

str1 = "   Hello   "
print("["+ str1 + "]")
print("["+ str1.strip() + "]")



str2 = " Adam and Eva "
print("["+ str2 + "]")
print("["+ str2.strip() + "]")


Tuy nhiên cách này chỉ có thể xóa khoảng trắng ở hai đầu chuỗi mà thôi. Nếu muốn xóa toàn bộ khoảng trắng trong chuỗi Python, hãy xem ở phần sau.

Xóa ký tự chỉ định ở đầu chuỗi python | lstrip trong Python

Chúng ta sử dụng phương thức lstrip để xóa ký tự chỉ định ở đầu chuỗi python với cú pháp sau đây:

new_str = org_str. lstrip ( chars )

Ở đây l là viết tắt của left trong tiếng anh, có nghĩa là ở đầu bên trái chuỗi chỉ định.

Phương thức lstrip() sẽ tìm kiếm lần lượt từng ký tự trong đối số chars và xóa đi các ký tự giống nó ở đầu bên trái chuỗi org_str, và lưu kết quả tại một chuỗi mới.

Cách sử dụng phương pháp lstrip ( ) về cơ bản giống với strip ( ) mà Kiyoshi đã hướng dẫn ở trên. Và tựa như strip ( ), phương pháp lstrip ( ) cũng KHÔNG làm đổi khác chuỗi bắt đầu, mà chỉ xóa đi ký tự chỉ định trong chuỗi bắt đầu và lưu hiệu quả phép xóa trong một chuỗi mới mà thôi .Sau đây, hãy cùng xem 1 số ít ví dụ sử dụng lstrip ( ) để xóa ký tự chỉ định ở đầu chuỗi python như sau :

Xóa các dấu chấm đầu chuỗi python:

org_str = "...Hello..."
new_str = org_str.lstrip(".")
print(org_str)
print(new_str)


Xóa các ký tự chỉ định ở đầu chuỗi python

org_str = "www.example.com"
print(org_str.lstrip("w.cmo"))

Xóa khoảng trắng ở đầu chuỗi Python:

org_str = "   My   First   Love   "
new_str = org_str.lstrip()
print('['+ org_str + ']')
print('['+ new_str + ']')



Xóa ký tự chỉ định ở cuối chuỗi Python | rstrip() trong Python

Chúng ta sử dụng phương thức rstrip() để xóa ký tự chỉ định ở cuối chuỗi Python với cú pháp sau đây:

new_str = org_str. rstrip ( chars )

Ở đây r là viết tắt của right trong tiếng anh, có nghĩa là ở đầu bên phải chuỗi chỉ định.

Phương thức rstrip() sẽ tìm kiếm lần lượt từng ký tự trong đối số chars và xóa đi các ký tự giống nó ở đầu bên phải chuỗi org_str, và lưu kết quả tại một chuỗi mới.

Cách sử dụng phương pháp rstrip ( ) về cơ bản giống với strip ( ) mà Kiyoshi đã hướng dẫn ở trên. Và tựa như strip ( ), phương pháp rstrip ( ) cũng KHÔNG làm đổi khác chuỗi bắt đầu, mà chỉ xóa đi ký tự chỉ định ở cuối chuỗi bắt đầu và lưu tác dụng phép xóa trong một chuỗi mới mà thôi .Sau đây, hãy cùng xem 1 số ít ví dụ sử dụng rstrip ( ) để xóa ký tự chỉ định ở cuối chuỗi Python như sau :

Xóa các dấu chấm cuối chuỗi python:

org_str = "...Hello..."
new_str = org_str.rstrip(".")
print(org_str)
print(new_str)


Xóa các ký tự chỉ định ở cuối chuỗi python

org_str = "www.example.com"
print(org_str.rstrip("w.cmo"))

Xóa khoảng trắng ở cuối chuỗi Python:

org_str = "   My   First   Love   "
new_str = org_str.rstrip()
print('['+ org_str + ']')
print('['+ new_str + ']')



Xóa toàn bộ các ký tự chỉ định trong chuỗi python

Trong những phương pháp trên, tất cả chúng ta đã học được cách xóa một hoặc một chuỗi ký tự chỉ định với thứ tự ngẫu nhiên từ hai đầu, hoặc từ một đầu chuỗi trong python. Tuy nhiên những cách trên có điểm yếu kém là không hề giúp tất cả chúng ta xóa hàng loạt một hoặc một chuỗi ký tự chỉ định trong một chuỗi bắt đầu được .

Để xóa toàn bộ các ký tự chỉ định trong chuỗi python, chúng ta có thể ứng dụng chức năng thay thế ký tự trong chuỗi python của phương thức replace() và chuyển các ký tự chỉ định trong chuỗi thành ký tự trống. Nhờ đó, chúng ta có thể dễ dàng xóa toàn bộ chúng khỏi chuỗi ban đầu.

Ví dụ, chúng ta sẽ xóa toàn bộ các ký tự city trong chuỗi bigcityboy như sau:

str = "bigcityboy"
print(str.replace("city", ""))

Bạn hoàn toàn có thể tìm hiểu và khám phá thêm về replace trong python tại bài viết [ Thay thế ký tự trong chuỗi python ]

Xóa ký tự đầu tiên và xóa ký tự cuối cùng trong chuỗi Python | cắt (slice) chuỗi

Xóa ký tự đầu trong chuỗi Python

Bằng cách ứng dụng chức năng cắt (slice) chuỗi, chúng ta có thể xóa ký tự đầu trong chuỗi Python.

Ý tưởng ở đây là tất cả chúng ta sẽ tạo ra một chuỗi string mới chứa tổng thể ký tự trong chuỗi cũ ngoại trừ ký tự tiên phong của chuỗi cũ, bằng cách cắt chuỗi cũ từ ký tự thứ 2 cho tới cuối chuỗi .

Cách làm đơn giản như sau:

mystr = "aiueo"
first_delete_str = mystr[1:]
print(first_delete_str)

Lưu ý là cách làm này sẽ tạo ra một chuỗi mới chứa kết quả phép xóa, chứ không làm thay đổi chuỗi ban đầu.

mystr = "12345"
print(mystr)

first_delete_str = mystr[1:]
print(first_delete_str)

print(mystr)




  • Xem thêm : Cắt (slice) list trong python

Xóa ký tự cuối trong chuỗi Python

Tương tự, bằng cách ứng dụng chức năng cắt (slice) chuỗi, chúng ta có thể xóa ký tự cuối trong chuỗi Python.

Ý tưởng ở đây là tất cả chúng ta sẽ tạo ra một chuỗi string mới chứa tổng thể ký tự trong chuỗi cũ ngoại trừ ký tự sau cuối của chuỗi cũ, bằng cách cắt chuỗi cũ từ đầu chuỗi cho đến trước ký tự sau cuối trong chuỗi .

Cách làm đơn giản như sau:

mystr = "aiueo"
first_delete_str = mystr[:-1]
print(first_delete_str)

Lưu ý là cách làm này sẽ tạo ra một chuỗi mới chứa kết quả phép xóa, chứ không làm thay đổi chuỗi ban đầu.

mystr = "12345"
print(mystr)

last_delete_str = mystr[:-1]
print(last_delete_str)

print(mystr)




  • Xem thêm : Cắt (slice) list trong python

Xóa n ký tự từ đầu hoặc cuối chuỗi Python

Bằng cách ứng dụng chức năng cắt (slice) chuỗi, chúng ta có thể xóa n ký tự từ đầu hoặc cuối chuỗi Python.

Ví dụ chúng ta xóa 2 ký tự từ đầu chuỗi python như sau:

mystr = "12345"
new_str = mystr[2:]
print(new_str)

Tương tự chúng ta có thể xóa 2 ký tự từ cuối chuỗi python như sau:

mystr = "12345"
new_str = mystr[:-2]
print(new_str)

  • Xem thêm : Cắt (slice) list trong python

Xóa khoảng trắng trong chuỗi Python | Phương thức replace()

Để xóa khoảng chừng trắng trong chuỗi Python, tất cả chúng ta hoàn toàn có thể sử dụng phương pháp replace ( ) hoặc là phương pháp strip ( ) trong python .

Giống như Kiyoshi đã hướng dẫn ở phần strip() ở trên, chúng ta có thể xóa khoảng trắng ở hai đầu chuỗi Python với strip() như sau:

s = '   Adam   and   Eva   '
t = s. strip()
print(t)


Trong trường hợp bạn muốn xóa toàn bộ khoảng trắng trong chuỗi Python, chúng ta sử dụng chức năng thay thế ký tự trong chuỗi của phương thức replace() và thay thế toàn bộ khoảng trắng trong chuỗi bằng một chuỗi rỗng như sau:

s = '   Adam   and   Eva   '
t = s. replace(' ','')
print(t)


Tổng kết và thực hành

Trên đây Kiyoshi đã hướng dẫn bạn cách xóa ký tự trong chuỗi python bằng các phương thức có sẵn như strip ,lstrip, rstrip rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu và khám phá những kiến thức và kỹ năng sâu hơn về python trong những bài học kinh nghiệm tiếp theo .