Hướng dẫn how do you split a string in two conditions in python? - làm thế nào để bạn tách một chuỗi trong hai điều kiện trong python?

Đây là một cách an toàn cho bất kỳ người phân trang nào, sử dụng các biểu thức thông thường:

>>> import re
>>> delimiters = "a", "...", "(c)"
>>> example = "stackoverflow (c) is awesome... isn't it?"
>>> regex_pattern = '|'.join(map(re.escape, delimiters))
>>> regex_pattern
'a|\\.\\.\\.|\\(c\\)'
>>> re.split(regex_pattern, example)
['st', 'ckoverflow ', ' is ', 'wesome', " isn't it?"]

Re.escape cho phép xây dựng mô hình tự động và để các dấu phân cách thoát ra một cách độc đáo.

Đây là giải pháp này là một chức năng cho niềm vui sao chép của bạn:

def split(delimiters, string, maxsplit=0):
    import re
    regex_pattern = '|'.join(map(re.escape, delimiters))
    return re.split(regex_pattern, string, maxsplit)

Nếu bạn sẽ chia tách thường xuyên bằng cách sử dụng cùng một dấu phân cách, hãy biên dịch biểu thức thông thường của bạn trước như được mô tả và sử dụng

def split(delimiters, string, maxsplit=0):
    import re
    regex_pattern = '|'.join(map(re.escape, delimiters))
    return re.split(regex_pattern, string, maxsplit)
1.


Nếu bạn muốn để các dấu phân cách ban đầu trong chuỗi, bạn có thể thay đổi Regex để sử dụng khẳng định Lookbehind thay thế: thay vào đó:

>>> import re
>>> delimiters = "a", "...", "(c)"
>>> example = "stackoverflow (c) is awesome... isn't it?"
>>> regex_pattern = '|'.join('(?<={})'.format(re.escape(delim)) for delim in delimiters)
>>> regex_pattern
'(?<=a)|(?<=\\.\\.\\.)|(?<=\\(c\\))'
>>> re.split(regex_pattern, example)
['sta', 'ckoverflow (c)', ' is a', 'wesome...', " isn't it?"]

(Thay thế

def split(delimiters, string, maxsplit=0):
    import re
    regex_pattern = '|'.join(map(re.escape, delimiters))
    return re.split(regex_pattern, string, maxsplit)
2 bằng
def split(delimiters, string, maxsplit=0):
    import re
    regex_pattern = '|'.join(map(re.escape, delimiters))
    return re.split(regex_pattern, string, maxsplit)
3 để gắn các dấu phân cách vào phía bên tay, thay vì bên trái)

Trong hướng dẫn này, bạn sẽ học cách sử dụng Python để phân chia một chuỗi trên nhiều dấu phân cách. Bạn sẽ học cách thực hiện việc này với Thư viện biểu thức thường xuyên tích hợp & nbsp; ________ 14 & nbsp; cũng như với chuỗi tích hợp & nbsp; ________ 15 & nbsp;

Nhưng tại sao thậm chí học cách phân chia dữ liệu? Tách dữ liệu có thể là một kỹ năng vô cùng hữu ích để học. Dữ liệu có tất cả các hình dạng và nó thường không sạch sẽ như chúng ta muốn. Sẽ có nhiều lần khi bạn muốn chia một chuỗi bởi nhiều trình phân cách để làm cho nó dễ dàng hơn để làm việc.

Bây giờ, hãy bắt đâù!

  • Làm thế nào để bạn chia một chuỗi trong Python?
  • Chia một chuỗi python trên nhiều trình phân cách bằng cách sử dụng các biểu thức thông thường
  • Chia một chuỗi python trên nhiều trình phân cách bằng cách sử dụng Chuỗi Chia
  • Tạo một hàm để phân chia chuỗi python với nhiều trình phân cách
  • Sự kết luận

Làm thế nào để bạn chia một chuỗi trong Python?

Chia một chuỗi python trên nhiều trình phân cách bằng cách sử dụng các biểu thức thông thường

Chia một chuỗi python trên nhiều trình phân cách bằng cách sử dụng Chuỗi Chia

string.split(seperator, maxsplit)

Python có một phương thức tích hợp mà bạn có thể áp dụng cho chuỗi, được gọi là & nbsp; ________ 15, cho phép bạn chia một chuỗi theo một dấu phân cách nhất định.

  • Phương pháp trông như thế này:: argument accepts what character to split on. If no argument is provided, it uses any whitespace to split.
  • Trong phương pháp này,::: the number of splits to do, where the default value is 
    def split(delimiters, string, maxsplit=0):
        import re
        regex_pattern = '|'.join(map(re.escape, delimiters))
        return re.split(regex_pattern, string, maxsplit)
    
    7, meaning that all occurrences are split.

Hãy nói rằng bạn có một chuỗi mà bạn muốn chia bằng dấu phẩy - hãy để Lừa học cách làm điều này:

sample_string = 'my name is nik, welcome to datagy'
split_string = sample_string.split(',')

print(split_string)

# Returns: ['my name is nik', ' welcome to datagy']

Chúng ta có thể thấy ở đây rằng những gì mà trả về là một danh sách chứa tất cả các giá trị mới chia.

Kiểm tra một số hướng dẫn Python khác về DataGy, bao gồm hướng dẫn đầy đủ của chúng tôi về Gấu trúc kiểu dáng và tổng quan toàn diện của chúng tôi về các bảng xoay vòng trong gấu trúc!

Chia một chuỗi python trên nhiều trình phân cách bằng cách sử dụng các biểu thức thông thường

Cách trực quan nhất để phân chia chuỗi là sử dụng thư viện biểu thức chính quy tích hợp & nbsp; ________ 14. Thư viện có phương thức tích hợp trong & nbsp; ____ 15 & nbsp; tương tự như ví dụ được đề cập ở trên. Điều độc đáo của phương pháp này là nó cho phép bạn sử dụng các biểu thức thông thường để phân chia chuỗi của chúng tôi.

Hãy cùng xem phương pháp này trông như thế nào:

re.split(pattern, string, maxsplit=0, flags=0)

Tương tự như ví dụ trên, đối số & nbsp; ____ 20 & nbsp; cho phép chúng tôi đặt tần suất một chuỗi nên được chia. Nếu nó được đặt thành bất kỳ số khác không tích cực, thì nó sẽ chỉ chia số lần đó.

Vì vậy, hãy để lặp lại ví dụ trước đó của chúng tôi với & nbsp; ________ 14 & nbsp; mô -đun:

import re

sample_string = 'my name is nik, welcome to datagy'
split_string = re.split(',', sample_string)

print(split_string)

# Returns: ['my name is nik', ' welcome to datagy']

Bây giờ, giả sử bạn có một chuỗi có nhiều dấu phân cách. Phương thức & nbsp; ____ 14 & nbsp; giúp bạn dễ dàng phân chia chuỗi này!

Hãy cùng xem một ví dụ khác:

import re

sample_string = 'hi! my name is nik, welcome; to datagy'
split_string = re.split(r',|!|;', sample_string)

print(split_string)

# Returns: ['hi', ' my name is nik', ' welcome', ' to datagy']

Những gì chúng tôi đã thực hiện ở đây được thông qua trong một chuỗi thô mà & nbsp; ________ 14 & nbsp; giúp giải thích. Chúng tôi vượt qua ký tự ống & nbsp; ________ 24 & nbsp; như một & nbsp; ________ 25 & nbsp; câu lệnh.

Chúng ta có thể đơn giản hóa điều này hơn nữa bằng cách truyền trong một bộ sưu tập biểu thức thông thường. Hãy để xem cách chúng ta có thể làm điều này:

import re

sample_string = 'hi! my name is nik, welcome; to datagy'
split_string = re.split(r'[,;!]', sample_string)

print(split_string)

# Returns: ['hi', ' my name is nik', ' welcome', ' to datagy']

Điều này trả về điều tương tự như trước đây, nhưng nó có một chút sạch hơn để viết và đọc.

Bạn cũng có thể tránh sử dụng & nbsp; ____ 14 & nbsp; hoàn toàn mô -đun. Mô -đun có thể hơi đáng sợ, vì vậy nếu bạn thoải mái hơn, bạn cũng có thể hoàn thành điều này mà không cần mô -đun.

Trong ví dụ dưới đây, bạn sẽ học cách phân chia chuỗi Python với nhiều trình phân cách bằng cách thay thế các giá trị trước tiên. Chúng tôi sẽ lấy chuỗi mới của chúng tôi và thay thế tất cả các trình phân cách để trở thành một dấu phân cách nhất quán. Hãy để một cái nhìn:

sample_string = 'hi! my name is nik, welcome; to datagy'

new_string = sample_string.replace('!', ',').replace(';', ',')
split_string = new_string.split(',')

print(split_string)

# Returns: ['hi', ' my name is nik', ' welcome', ' to datagy']

Phương pháp này hoạt động tốt khi bạn có một số lượng nhỏ các trình phân cách, nhưng nó nhanh chóng trở nên lộn xộn khi bạn có nhiều hơn 2 hoặc 3 trình phân cách mà bạn muốn chia chuỗi của mình. Nó tốt hơn để gắn bó với mô -đun & nbsp; ____ 14 & nbsp; để chia tách phức tạp hơn.

Tạo một hàm để phân chia chuỗi python với nhiều trình phân cách

Cuối cùng, hãy để Lừa xem cách phân tách một chuỗi bằng một hàm. Đối với chức năng này, chúng tôi sẽ sử dụng mô -đun & nbsp; ____ 14 & nbsp; Bạn có thể vượt qua trong một danh sách các dấu phân cách và một chuỗi và có một chuỗi phân chia được trả về.

Bắt đầu nào!

def split(delimiters, string, maxsplit=0):
    import re
    regex_pattern = '|'.join(map(re.escape, delimiters))
    return re.split(regex_pattern, string, maxsplit)
0

Sự kết luận

Trong bài đăng này, bạn đã học được cách chia chuỗi Python bằng nhiều trình phân cách. Bạn đã học cách thực hiện việc này bằng cách sử dụng phương thức tích hợp & nbsp;

Để tìm hiểu thêm về việc chia các chuỗi python, hãy xem tài liệu & nbsp; ____ 15 & nbsp; phương thức tại đây. Để tìm hiểu thêm về việc chia các chuỗi với & nbsp; ____ 14, hãy xem & nbsp; tài liệu chính thức ở đây.

Bạn có thể chia một chuỗi bằng hai ký tự trong Python không?

Hướng dẫn nhanh để sử dụng Split () Thư viện tiêu chuẩn Python đi kèm với một hàm để chia các chuỗi: hàm split (). Hàm này có thể được sử dụng để phân chia chuỗi giữa các ký tự.the split() function. This function can be used to split strings between characters.

Làm thế nào để bạn chia một chuỗi thành hai phần?

Algorithm..
Bước 1: Bắt đầu ..
Bước 2: Xác định str = "aaaabbbbcccc".
Bước 3: Xác định Len ..
Bước 4: Đặt n = 3 ..
Bước 5: Đặt temp = 0 ..
Bước 6: chars = len/n ..
Bước 7: Xác định chuỗi [] EquaStr ..
Bước 8: Nếu (Len%N! = 0) sau đó in ("Chuỗi không thể được chia thành các phần bằng nhau")

Có thể chia () lấy hai đối số?

Phương thức chia () chấp nhận hai đối số.Đối số tùy chọn đầu tiên là dấu phân cách, chỉ định loại phân tách nào sẽ sử dụng để phân tách chuỗi.Nếu đối số này không được cung cấp, giá trị mặc định là bất kỳ khoảng trắng nào, có nghĩa là chuỗi sẽ phân chia bất cứ khi nào.. The first optional argument is separator , which specifies what kind of separator to use for splitting the string. If this argument is not provided, the default value is any whitespace, meaning the string will split whenever .

Hàm chia () trong chuỗi là gì?

Tách được sử dụng để chia một chuỗi được phân định thành chuỗi con.Bạn có thể sử dụng một mảng ký tự hoặc mảng chuỗi để chỉ định các ký tự hoặc chuỗi phân định hoặc nhiều hơn.Nếu không có ký tự phân định nào được chỉ định, chuỗi được phân chia tại các ký tự không gian trắng.used to break a delimited string into substrings. You can use either a character array or a string array to specify zero or more delimiting characters or strings. If no delimiting characters are specified, the string is split at white-space characters.