Làm cách nào để xóa các ký hiệu đặc biệt khỏi chuỗi trong python?

Trong hướng dẫn này, chúng ta sẽ thảo luận về nhiều cách khác nhau để xóa tất cả các ký tự đặc biệt khỏi chuỗi trong Python. Chúng ta có thể loại bỏ các ký tự đặc biệt khỏi chuỗi bằng cách sử dụng hàm hoặc biểu thức chính quy

Xóa các ký tự đặc biệt khỏi chuỗi trong Python bằng phương pháp str.isalnum[]

Phương thức str.isalnum[] trả về True nếu các ký tự là ký tự chữ và số, nghĩa là không có ký tự đặc biệt nào trong chuỗi. Nó sẽ trả về

string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
0 nếu có bất kỳ ký tự đặc biệt nào trong chuỗi

Để xóa các ký tự đặc biệt khỏi chuỗi, chúng ta sẽ phải kiểm tra xem một ký tự có phải là chữ và số hay không và loại bỏ ký tự đó. Việc thực hiện ví dụ của phương pháp này là dưới đây

string = "Hey! What's up bro?"

new_string = ''.join[char for char in string if char.isalnum[]]
print[new_string]

đầu ra

Xóa các ký tự đặc biệt khỏi chuỗi trong Python bằng phương pháp
string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
1

Để loại bỏ các ký tự đặc biệt khỏi chuỗi, chúng ta cũng có thể sử dụng phương thức

string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
1, tương tự như phương pháp đã giải thích ở trên. Nhưng trong cách tiếp cận này, thay vì sử dụng vòng lặp
string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
3 và câu lệnh
string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
0 trên phương thức str.isalnum[], chúng ta sẽ sử dụng hàm
string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
2

mã ví dụ

string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]

Xóa các ký tự đặc biệt khỏi chuỗi trong Python bằng biểu thức chính quy

Để xóa ký tự đặc biệt khỏi chuỗi, chúng ta có thể viết biểu thức chính quy sẽ tự động xóa ký tự đặc biệt khỏi chuỗi. Biểu thức chính quy cho điều này sẽ là

string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
3, trong đó
string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
4 đại diện cho bất kỳ ký tự nào ngoại trừ các ký tự trong ngoặc và
string = "Hey! What's up bro?"

new_string = ''.join[filter[str.isalnum, string]] 
print[new_string]
5 đại diện cho chuỗi đó chỉ có thể có các chữ cái viết hoa và nhỏ cũng như các chữ số

Chuỗi là loại dữ liệu được sử dụng phổ biến nhất trong Python và khi chúng được sử dụng hết mức, chúng sẽ gây ra vô số vấn đề. Điển hình nhất là chuỗi thoát tab mới được thêm vào cuối chuỗi hoặc các ký tự đặc biệt thay cho dấu trọng âm. Những lỗi này cực kỳ phổ biến khi tương tác với các tệp. Bất kể điều gì đã khiến định dạng bị hỏng, chúng ta phải có thể xóa các ký tự này khỏi chuỗi. Python có nhiều chức năng tích hợp sẵn cho các mục đích khác nhau. Trong Python, các chuỗi là bất biến. Điều đó có nghĩa là chúng tôi sẽ không thể thay đổi nội dung của nó. Tuy nhiên, chúng ta có thể tạo một chuỗi mới chỉ bằng một vài ký tự từ chuỗi cũ. Biến ban đầu sau đó có thể được gán cho chuỗi cập nhật. Nó sẽ xuất hiện như thể chuỗi đã bị thay đổi, với các ký tự không mong muốn đã bị xóa. Chúng ta sẽ xem xét một số phương pháp khác nhau để xóa các ký tự đặc biệt khỏi chuỗi trong bài đăng này

ví dụ 1

Ví dụ đầu tiên bao gồm việc sử dụng Python isalnum. Phương thức chuỗi Python. isalnum[] trả về True nếu có các ký tự chữ và số trong chuỗi đã chỉ định. Nó trả về Sai nếu đó không phải là ký tự chữ và số. Điều này có thể được sử dụng để nối thêm các ký tự chữ và số chỉ vào một chuỗi mới được tạo bằng cách lặp qua một chuỗi. Xem xét ví dụ sau. Trong mã bên dưới, bạn có thể thấy rằng chúng tôi đã tạo hai chuỗi, một trong số đó bao gồm chuỗi cũ của chúng tôi và chuỗi còn lại trống. Sử dụng. isalnum[], chúng tôi lặp qua từng ký tự trong chuỗi của mình và xác định xem đó có phải là chữ và số không. Nếu đúng như vậy, chúng tôi sẽ thêm ký tự vào chuỗi của chúng tôi. Chúng tôi không làm bất cứ điều gì nếu nó không phải là

mytxt = 'python -- là. dễ dàng. '

res_txt = ''

cho character in mytxt:

if . isalnum[] .

res_txt + = ký tự

in[res_txt]

Đây là kết quả và bạn có thể thấy tất cả các ký tự đặc biệt đã được xóa thành công

ví dụ 2

Bây giờ chúng ta sẽ xóa các ký tự đặc biệt khỏi chuỗi bằng biểu thức chính quy. Biểu thức chính quy là một tập hợp các ký tự có cú pháp cụ thể có thể được sử dụng để khớp hoặc tìm các chuỗi hoặc tập hợp chuỗi khác. Mô-đun re trong Python hỗ trợ đầy đủ các biểu thức chính quy kiểu Perl. Khi một lỗi xuất hiện trong khi xây dựng một biểu thức chính quy, mô-đun re sẽ tạo lại. ngoại lệ lỗi. Mô-đun biểu thức chính quy trong Python, re, chứa một số kỹ thuật thao tác chuỗi hữu ích

Phương thức sub[] cho phép chúng ta thêm các chuỗi bằng các chuỗi thay thế, đây là một trong những chiến lược này. Chúng tôi không phải chỉ định ký tự mà chúng tôi muốn thay thế khi sử dụng thư viện lại, đây là một trong những lợi ích. Do đó, chúng tôi có thể chỉ định phạm vi ký tự thay thế [hoặc giữ nguyên]. Để giữ tất cả các ký tự chữ cái và dấu cách, chúng ta có thể nói với. sub[] để thay thế mọi thứ trừ [a-zA-Z0-9]. Hãy xem qua những gì chúng tôi đã hoàn thành trong mã. Một biến đã được tạo cho chuỗi của chúng tôi. Chúng tôi đã sử dụng lại. sub[] để tạo phương thức thay thế của chúng tôi. Hàm chấp nhận ba đối số. [1] mẫu để thay thế [chúng tôi đã sử dụng để chỉ ra rằng chúng tôi không muốn thay thế bất cứ thứ gì], [2] các ký tự để thay thế và [3] chuỗi để thay thế trong

nhập lại

mytxt = 'python -- là. dễ dàng. '

res_txt = re . sub[ r "[^a-zA-Z0-9 ], "", mytxt]

print[res_txt]

Kiểm tra đầu ra bên dưới của đoạn mã trên

ví dụ 3

Phương thức filter[] của Python có thể xóa các ký tự đặc biệt khỏi một chuỗi, tương tự như vòng lặp for. Phương thức filter[] nhận hai tham số để thực thi đúng chương trình. Bạn sẽ cần một chức năng có thể lặp lại và một chức năng để đánh giá để lọc. Vì thực tế là các chuỗi có thể lặp lại nên chúng tôi có thể chuyển vào một phương thức để xóa các ký tự đặc biệt. Giống như kỹ thuật vòng lặp for,. kỹ thuật isalnum[] có thể được sử dụng để xác minh xem một chuỗi con có phải là chữ và số hay không. Hãy xem cách nó hoạt động trong Python. Một đối tượng bộ lọc chỉ có các ký tự chữ và số đã được tạo bằng chức năng bộ lọc trong mã bên dưới. Các ký tự của chúng ta sau đó được liên kết với các ký tự trống bằng str. tham gia kỹ thuật

nhập lại

mytxt = 'python -- là. dễ dàng. '

res_txt = '' . tham gia[bộ lọc[str . .isalnum, mytxt ]]

print[res_txt]

Ở đây bạn có thể thấy rằng các ký tự đặc biệt đã bị xóa

Phần kết luận

Bạn đã học cách xóa các ký tự đặc biệt khỏi chuỗi Python trong bài đăng này. Điều này được thực hiện bằng cách sử dụng phương thức isalphanum[], thư viện lại biểu thức chính quy và phương thức filter[]. Chúng tôi cũng đã đề cập đến các ví dụ để đạt được mục đích này thành công. Làm việc với dữ liệu văn bản ngày càng trở nên quan trọng;

Làm cách nào để xóa các ký tự đặc biệt cụ thể khỏi chuỗi trong Python?

Xóa các ký tự đặc biệt khỏi chuỗi bằng bộ lọc . Hàm filter[] chấp nhận hai tham số. Một chức năng để đánh giá, Một bộ lọc có thể lặp lại

Làm cách nào để xóa các ký tự đặc biệt khỏi chuỗi trong Python bằng regex?

Sử dụng 'str. replace[] , chúng ta có thể thay thế một ký tự cụ thể. Nếu chúng ta muốn xóa ký tự cụ thể đó, hãy thay thế ký tự đó bằng một chuỗi rỗng. các str. phương thức replace[] sẽ thay thế tất cả các lần xuất hiện của ký tự cụ thể được đề cập

Làm cách nào để xóa các ký tự đặc biệt khỏi chuỗi trong Python trừ dấu cách?

Chỉ cần tạo danh sách các ký tự bạn muốn, A-Z, a-z, 0-9, v.v. Và sử dụng vòng lặp for để lặp qua từng ký tự trong chuỗi thay thế các ký tự không có trong danh sách bằng khoảng trắng

Chủ Đề