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

Làm thế nào để kiểm tra xem một chuỗi chỉ chứa các ký tự nhất định trong Python?


Bạn có thể kiểm tra xem một chuỗi chỉ chứa các ký tự nhất định là kết quả bằng cách sử dụng Bộ. Khai báo một tập hợp bằng cách sử dụng các ký tự bạn muốn cho phép. Ví dụ:nếu chúng ta muốn kiểm tra xem một chuỗi chỉ chứa 1, 2, 3 và 4, chúng ta có thể sử dụng -

Ví dụ

from sets import Set
allowed_chars = Set('1234')
validationString = '121'
if Set(validationString).issubset(allowed_chars):
    print True
else:
    print False

Đầu ra

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

True

Bạn cũng có thể sử dụng regexes cho kết quả tương tự. Để chỉ khớp 1, 2, 3 và 4, chúng ta có thể gọi re.match (regex, string) bằng cách sử dụng regex:"^ [1234] + $".

ví dụ

import re
print(bool(re.match('^[1234]+$', '123abc')))
print(bool(re.match('^[1234]+$', '123')))

Đầu ra

False
True

Hãy nhớ rằng regex có công dụng đặc biệt đối với một số ký tự và do đó yêu cầu thoát khỏi chúng. re.match trả về một đối tượng, để kiểm tra xem nó có tồn tại hay không, chúng ta cần chuyển đổi nó thành boolean bằng cách sử dụng bool ().