Heim >Backend-Entwicklung >Python-Tutorial >So teilen Sie eine Zeichenfolge mithilfe verschiedener Trennzeichen auf

So teilen Sie eine Zeichenfolge mithilfe verschiedener Trennzeichen auf

anonymity
anonymityOriginal
2019-05-25 11:08:422891Durchsuche

So verwenden Sie unterschiedliche Trennzeichen, um eine Zeichenfolge zu teilen. Teilen Sie eine Zeichenfolge entsprechend dem Trennzeichen auf. Das Zeichen enthält unterschiedliche Trennzeichen, wie folgt

s = '12;;7.osjd ;.jshdjdknx+' where; . + ist das Trennzeichen

Welche Lösungen gibt es?

So teilen Sie eine Zeichenfolge mithilfe verschiedener Trennzeichen auf

Methode 1: Durch die Methode str.split() ein Trennzeichen nach dem anderen verarbeiten

#!/usr/bin/python3
 
 
def go_split(s, symbol):
    result = [s]
    for i in symbol:
        median = []
        # 普通方法
        # for x in result:
        #     median.extend(x.split(i)
         
        # 列表解析
        # [median.extend(y.split(i)) for y in result if y]
         
        # map高阶函数,map生成可迭代对象
        for z in map(lambda x: x.split(i), result):
            median.extend(z)
     
        # 以上三个方法都可以解决问题
        result = median
         
    # 去除空字符串
    return [x for x in result if x]
 
if __name__ == "__main__":
    # 定义初始字符串
    s = '12;;7.osjd;.jshdjdknx+'
    # 定义分隔符
    symbol = ';./+'
     
    result = go_split(s, symbol)
    print(result)

Methode 2: Durch die Methode re.split() Methode, Alle Zeichenfolgen auf einmal aufteilen, empfohlen

#!/usr/bin/python3
 
import re
 
 
def go_split(s, symbol):
    # 拼接正则表达式
    symbol = "[" + symbol + "]+"
    # 一次性分割字符串
    result = re.split(symbol, s)
    # 去除空字符
    return [x for x in result if x]
 
 
if __name__ == "__main__":
    # 定义初始字符串
    s = '12;;7.osjd;.jshdjdknx+'
    # 定义分隔符
    symbol = ';./+'
     
    result = go_split(s, symbol)
    print(result)

Das obige ist der detaillierte Inhalt vonSo teilen Sie eine Zeichenfolge mithilfe verschiedener Trennzeichen auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn