Chuỗi Regex chấp nhận tất cả các ký tự chữ cái và số chỉ không tính các ký tự đặc biệt

chào mọi người em đang cần một chuỗi Regular Expressions mà nó sẽ kiểm tra các string cho người dùng nhập vào .Chấp nhận tất cả các ký tự chữ cái và số chỉ không tính các kỹ tự đặc biệt như !@#$%^&*… Em cảm ơn em cũng đã thử mấy lần nhưng toàn fail

Test cái ni xem

^[a-zA-Z0-9]*$
2 Likes

Bạn cũng nên nêu ngôn ngữ bạn dùng nữa, không phải ngôn ngữ nào regex cũng giống nhau đâu

2 Likes

soory bạn nó nhận dấu + còn các kỹ tự lạ khác thì ko nhận

Ngôn ngữ của bạn là gì, mình build dùm cho

python bạn à nhận chuỗi đầu vào kiểm tra xem có ký tự lạ ko nhưng vẫn nhận dấu +

Bạn thử test như dưới đây

import re
regex = r'^[a-zA-Z0-9]*$'
content = 'astring123'
matchObj = re.search(regex, content)
print(matchObj.group())

Xem có kết quả gì? Lưu ý, regex này chỉ chấp nhận như bạn nói, chuỗi chỉ bao gồm các chữ cái và số, khoảng trắng và các thứ khác là fail hết

có nhận dấu cộng không bạn

Đương nhiên là không. Nếu kết quả của bạn là NoneType và lúc .group() bị lỗi báo về NoneType là chuỗi của bạn sai

mình muốn nó nhận cả dấu cộng các ký tự lạ khác thì fail thì mình sửa như thế nào vậy

Regex bạn build như thế này

regex = r'^[a-zA-Z0-9]*$'

Chỉ số và chữ cái. Hết

ý của mình là cái chuỗi của mình nó sẽ nhận số chữ cái và duy nhất dấu cộng các ký tự lạ khác cho ra đảo hết

regex = r'^[a-zA-Z0-9\+]*$'

Thử cái này xem

1 Like

vâng mình cảm ơn bạn nhiều lắm

Bạn có thể dùng trang này để kiểm tra regex của mình: https://regex101.com/

1 Like
if matchObj.group()==None:
    print ("Chuoi cua ban loi roi nha:")

ghi thế này có sai không bạn nhỉ

1 Like

cảm ơn bạn mình giải quyết được vấn đề rồi .Chúc bạn một buổi chiều vui vẻ

Kí tự tiếng Việt có chấp nhận không ạ?

Không được đâu em, em phải chuyển Tiếng Việt thành Tiếng Anh mới được.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?