Hướng dẫn how do you separate special characters from a string in python? - làm cách nào để tách các ký tự đặc biệt khỏi một chuỗi trong python?

6

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 đang cố gắng phân chia ở bất kỳ ký tự đặc biệt nào bằng cách sử dụng

>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
0 từ gói
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
1. Đây là những gì tôi đã làm cho đến nay, nhưng dường như chưa thực sự diễn ra. Bất kỳ ý tưởng?

word = [b for b in re.split[r'\`\-\=\~\!\@\#\$\%\^\&\*\[\]\_\+\[\]\{\}\;\'\\\:\"\|\\\?', a]]

Đã hỏi ngày 9 tháng 1 năm 2014 lúc 15:09Jan 9, 2014 at 15:09

4

Thay vì liệt kê tất cả các ký tự "đặc biệt", có thể dễ dàng hơn để tạo một lớp các ký tự trong đó không phân chia và đảo ngược nó bằng ký tự

>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
2.

Ví dụ:

>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
3 sẽ phân chia ở bất kỳ ký tự nào không có trong lớp
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
4 hoặc
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
5 [
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
6 và
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
7, hãy xem ở đây để biết thêm thông tin]. Tuy nhiên, lưu ý rằng ký tự
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
8 được bao gồm trong lớp
>>> re.split[r"[^a-zA-Z0-9\s]", "foo bar_blub23/x~y'z"]
['foo bar', 'blub23', 'x', 'y', 'z']
4, do đó, thay vào đó bạn có thể muốn chỉ định rõ ràng tất cả các ký tự "thông thường", ví dụ:
re.split[r'[`\-=~!@#$%^&*[]_+\[\]{};\'\\:"|>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
0
>>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
1
>>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
2

Để chia một chuỗi theo các ký tự đặc biệt, hãy gọi phương thức Split [] trên chuỗi, chuyển nó một biểu thức chính quy phù hợp với bất kỳ ký tự đặc biệt nào dưới dạng tham số. Phương thức sẽ phân chia chuỗi trên mỗi lần xuất hiện của một ký tự đặc biệt và trả về một mảng chứa kết quả.

re.split[r'[`\-=~!@#$%^&*[]_+\[\]{};\'\\:"|>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
1
"GeeksforGeeks, is an-awesome! website"
2
"GeeksforGeeks, is an-awesome! website"
3

Output:

Chuỗi ban đầu là: Đây, là - một: Ví dụ ?! Danh sách sau khi thực hiện chức năng phân chia: [‘Cái này

Ở đây, từ khóa [\ w,]+ chỉ ra rằng nó sẽ tìm thấy tất cả các trường hợp của bảng chữ cái hoặc dấu gạch dưới [_] một hoặc nhiều và trả lại chúng trong một danh sách. Lưu ý: [\ w,]+ won chia tách khi gạch dưới [_] khi nó tìm kiếm bảng chữ cái cũng như gạch dưới. & Nbsp;, or _ or or !. The symbol “|” represents or. There are some symbols in regex which are treated as special symbols and have different functions. If you wish to split on such a symbol, you need to escape it using a “\“[back-slash]. List of special characters that need to be escaped before using them:

. \ + * ? [ ^ ] $ [ ] { } = !  | : -

Example:  

Python3

re.split[r'[`\-=~!@#$%^&*[]_+\[\]{};\'\\:"|>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
7

re.split[r'[`\-=~!@#$%^&*[]_+\[\]{};\'\\:"|>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
1
"GeeksforGeeks, is an-awesome! website"
2
"GeeksforGeeks, is an-awesome! website"
3

Output:

Chuỗi ban đầu là: Đây, là - một: Ví dụ ?! Danh sách sau khi thực hiện chức năng phân chia: [‘Cái này

Ở đây, từ khóa [\ w,]+ chỉ ra rằng nó sẽ tìm thấy tất cả các trường hợp của bảng chữ cái hoặc dấu gạch dưới [_] một hoặc nhiều và trả lại chúng trong một danh sách. Lưu ý: [\ w,]+ won chia tách khi gạch dưới [_] khi nó tìm kiếm bảng chữ cái cũng như gạch dưới. & Nbsp;Note: [\w’]+ won’t split upon an underscore[_] as it searches for alphabets as well as underscores. 

Example:  

Python3

re.split[r'[`\-=~!@#$%^&*[]_+\[\]{};\'\\:"|>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
0
>>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
1
>>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
2

>>> re.split[r'[^\w]', 'toto"t"o/t!']
['toto', 't', 'o', 't', '']
3
re.split[r'[`\-=~!@#$%^&*[]_+\[\]{};\'\\:"|

Bài Viết Liên Quan

Chủ Đề