1
鑑於我想在字符串中的每個第三個字符後面插入一個空格,除了最後一個之後。正則表達式插入空格每第三個字符,除了在行末
這是多遠我得到:
re.sub('(.{3})','\\1 ',i)
但我沒有找到一個優雅的方式來跳過最後插入,對於情況len(i)%3=0
。
有什麼想法?
re.sub('(.{3})$-','\\1 ',i)
根本沒有幫助。
感謝
鑑於我想在字符串中的每個第三個字符後面插入一個空格,除了最後一個之後。正則表達式插入空格每第三個字符,除了在行末
這是多遠我得到:
re.sub('(.{3})','\\1 ',i)
但我沒有找到一個優雅的方式來跳過最後插入,對於情況len(i)%3=0
。
有什麼想法?
re.sub('(.{3})$-','\\1 ',i)
根本沒有幫助。
感謝
使用negative lookahead檢查比賽是不是在字符串的結尾:
In [2]: s = "abcdefghi"
In [3]: re.sub(r'(.{3})(?!$)','\\1 ', s)
Out[3]: 'abc def ghi'
您可以用非正則表達式選項通過分割字符串還繼續和加入切片部分:
In [4]: " ".join(s[i: i + 3] for i in range(0, len(s), 3))
Out[4]: 'abc def ghi'
謝謝!第一個建議正是我一直在尋找的。 – szeta