Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để xác minh rằng một chuỗi chỉ chứa các chữ cái, số, dấu gạch dưới và dấu gạch ngang trong Python?


Bạn có thể sử dụng biểu thức chính quy để đạt được tác vụ này. Để xác minh rằng chuỗi chỉ chứa các chữ cái, số, dấu gạch dưới và dấu gạch ngang, chúng ta có thể sử dụng regex sau:"^ [A-Za-z0-9 _-] * $".

ví dụ

 import reprint (bool (re.match ("^ [A-Za-z0-9 _-] * $", 'aValidString123 --__'))) print (bool (re.match ("^ [A- Za-z0-9 _-] * $ ", 'inv @ lid'))) 

Đầu ra

 TrueFalse 

Bạn cũng có thể nhận được kết quả này bằng cách sử dụng Bộ. Khai báo một tập hợp bằng các ký tự bạn muốn cho phép và sử dụng mã sau -

Ví dụ

 from set import Setallowed_chars =Set ('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ _-') validationString ='inv @ lid'if Set (validationString) .issubset (allow_pre> 

Đầu ra

Điều này sẽ cho bạn kết quả -

 Sai