Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

22

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi muốn biết nếu có một cách để kiểm tra xem một chuỗi có ký tự đặc biệt trong đó không. Từ kiến ​​thức của tôi, không có chức năng sẵn có để đạt được điều này như '.isnumeric ()' hoặc '.isDigit ()'.

Ví dụ, với một 'Kiểm tra đầu vào!' Tôi muốn chương trình trả về 'True' hoặc cho đầu vào 'Không có ký tự đặc biệt', nó sẽ trả về 'Sai'.

Theo nhân vật đặc biệt, ý tôi là *&%, vv Một danh sách đầy đủ có thể được tìm thấy ở đây.

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

hỏi ngày 16 tháng 7 năm 2019 lúc 17:40Jul 16, 2019 at 17:40

5

Kiểm tra xem bất kỳ ký tự nào không phải là chữ và số như:

any(not c.isalnum() for c in mystring)

Đã trả lời ngày 16 tháng 7 năm 2019 lúc 17:49Jul 16, 2019 at 17:49

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

iPalekaipalekaipaleka

3,5222 Huy hiệu vàng10 Huy hiệu bạc31 Huy hiệu đồng2 gold badges10 silver badges31 bronze badges

1

Hãy thử:

special_characters = ""!@#$%^&*()-+?_=,<>/""
s=input()
# Example: $tackoverflow

if any(c in special_characters for c in s):
    print("yes")
else:
    print("no")
 
# Response: yes

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

Đã trả lời ngày 30 tháng 7 năm 2020 lúc 13:09Jul 30, 2020 at 13:09

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

Mkgivkmkgivkmkgivk

2212 Huy hiệu bạc5 Huy hiệu Đồng2 silver badges5 bronze badges

3

Sử dụng

special_characters = ""!@#$%^&*()-+?_=,<>/""
s=input()
# Example: $tackoverflow

if any(c in special_characters for c in s):
    print("yes")
else:
    print("no")
 
# Response: yes
2 (Doc):

text = 'This is my text with special character (👽)'

from string import printable

if set(text).difference(printable):
    print('Text has special characters.')
else:
    print("Text hasn't special characters.")

Prints:

Text has special characters.

Chỉnh sửa: Chỉ kiểm tra các ký tự và chữ số ASCII:

text = 'text%'

from string import ascii_letters, digits

if set(text).difference(ascii_letters + digits):
    print('Text has special characters.')
else:
    print("Text hasn't special characters.")

Đã trả lời ngày 16 tháng 7 năm 2019 lúc 17:49Jul 16, 2019 at 17:49

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

iPalekaipalekaAndrej Kesely

3,5222 Huy hiệu vàng10 Huy hiệu bạc31 Huy hiệu đồng13 gold badges41 silver badges83 bronze badges

0

Hãy thử:

special_char = False
for letter in string:
    if (not letter.isnumeric() and not letter.isdigit()):
        special_char = True
        break

Đã trả lời ngày 30 tháng 7 năm 2020 lúc 13:09

import re
word = 'asdf*'
special_char = False
regexp = re.compile('[^0-9a-zA-Z]+')
if regexp.search(word):
    special_char = True

MkgivkmkgivkJul 16, 2019 at 17:45

2212 Huy hiệu bạc5 Huy hiệu ĐồngZachary Oldham

Sử dụng

special_characters = ""!@#$%^&*()-+?_=,<>/""
s=input()
# Example: $tackoverflow

if any(c in special_characters for c in s):
    print("yes")
else:
    print("no")
 
# Response: yes
2 (Doc):1 gold badge5 silver badges20 bronze badges

1

Chỉnh sửa: Chỉ kiểm tra các ký tự và chữ số ASCII:

def has_special_char(text: str) -> bool:
    return any(c for c in text if not c.isalnum() and not c.isspace())


if __name__ == '__main__':
    texts = [
        'asdsgbn!@$^Y$',
        '    ',
        'asdads 345345',
        '12😄3123',
        'hnfgbg'
    ]
    for it in texts:
        if has_special_char(it):
            print(it)

output:

asdsgbn!@$^Y$
12😄3123

Andrej Keselyandrej KeselyJul 16, 2019 at 17:55

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

136K13 Huy hiệu vàng41 Huy hiệu bạc83 Huy hiệu đồngabdusco

Một cách không lý tưởng nhưng tiềm năng để làm điều đó trong khi tôi tìm kiếm một giải pháp tốt hơn:2 gold badges26 silver badges39 bronze badges

0

Cập nhật: Hãy thử điều này, nó thấy nếu Regex có mặt trong chuỗi. Regex được hiển thị là cho bất kỳ ký tự không phải là đồngumeric.

Đã trả lời ngày 16 tháng 7 năm 2019 lúc 17:45

# Python program to check if a string 
# contains any special character 

# import required package 
import re 

# Function checks if the string 
# contains any special character 
def run(string): 

    # Make own character set and pass  
    # this as argument in compile method 
    regex = re.compile('[@_!#$%^&*()<>?/\|}{~:]') 

    # Pass the string in search  
    # method of regex object.     
    if(regex.search(string) == None): 
        print("String is accepted") 

    else: 
        print("String is not accepted.") 


# Driver Code 
if __name__ == '__main__' : 

    # Enter the string 
    string = "Geeks$For$Geeks"

    # calling run function  
    run(string) 

Zachary Oldhamzachary OldhamJul 16, 2019 at 18:02

8181 Huy hiệu vàng5 Huy hiệu bạc20 Huy hiệu đồngKartikeya Sharma

Giả sử một khoảng trắng không được tính là một nhân vật đặc biệt.1 gold badge10 silver badges20 bronze badges

Đã trả lời ngày 16 tháng 7 năm 2019 lúc 17:55

special_characters = ""!@#$%^&*()-+?_=,<>/""
s=input()
# Example: $tackoverflow

if any(c in special_characters for c in s):
    print("yes")
else:
    print("no")
 
# Response: yes
0

AbdusCoabdusco

special_characters = ""!@#$%^&*()-+?_=,<>/""
s=input()
# Example: $tackoverflow

if any(c in special_characters for c in s):
    print("yes")
else:
    print("no")
 
# Response: yes
1

8.4652 Huy hiệu vàng26 Huy hiệu bạc39 Huy hiệu Đồng

GeekSforGeeks có một ví dụ khá tốt bằng cách sử dụng Regex.Jul 16, 2019 at 17:53

Hướng dẫn is a special character in python string? - là một ký tự đặc biệt trong chuỗi python?

Làm thế nào để bạn kiểm tra xem một ký tự đặc biệt có trong một chuỗi trăn không?

Phương thức: Để kiểm tra xem một ký tự đặc biệt có mặt trong một chuỗi đã cho hay không, trước tiên nhóm tất cả các ký tự đặc biệt như một tập hợp. .firstly group all special characters as one set. Then using for loop and if statements check for special characters. If any special character is found then increment the value of c.

Nhân vật đặc biệt có phải là một chuỗi không?

Chuỗi chữ được biểu diễn bằng một tập hợp các ký tự được đặt trong các dấu ngoặc kép ("chuỗi văn bản"). Để bao gồm một số ký tự đặc biệt nhất định trong một chuỗi, bạn phải có tiền tố chúng bằng dấu gạch chéo ngược (\). Ví dụ: để bao gồm một dấu ngoặc kép trong một chuỗi, bạn sẽ viết \ ".To include certain special characters within a String, you must prefix them with a backslash (\). For example, to include a double quotation mark within a String, you would write \" .

Làm thế nào để bạn kiểm tra xem có ký tự đặc biệt trong một chuỗi không?

Để kiểm tra xem một chuỗi có chứa các ký tự đặc biệt không, hãy gọi phương thức Test () trên biểu thức chính quy phù hợp với bất kỳ ký tự đặc biệt nào.Phương thức kiểm tra sẽ trả về true nếu chuỗi chứa ít nhất 1 ký tự đặc biệt và sai.call the test() method on a regular expression that matches any special character. The test method will return true if the string contains at least 1 special character and false otherwise.

Làm thế nào để bạn xử lý các ký tự đặc biệt trong một chuỗi trăn?

Trình tự thoát cho phép bạn bao gồm các ký tự đặc biệt trong chuỗi.Để làm điều này, chỉ cần thêm một dấu gạch chéo ngược (\) trước nhân vật bạn muốn trốn thoát.add a backslash ( \ ) before the character you want to escape.