在Python中,有没有一种方法可以将一个单词分割成等分?
问题描述
几周前我问了这个问题,得到了答案this is the original post
但我需要将输出分成相等的部分,无论字符串的长度如何,所以在我发布的第一个帖子中,我得到了这个答案,它很好地工作了,这要归功于(AziMez)他给了我代码,工作得很好
编码:
import re
string = "RV49CJ0AUTS172Y"
separated = "-".join(re.findall('.{%d}' % 5, string))
print(separated)
我有这个输出,这是我当时想要的:
RV49C-J0AUT-S172Y
但现在我将其设置为User Based,这样用户向字符串输入一个长度,它就会将字符串分成相等的部分,就像我有这样的输入一样:
RV49CJ0AUTS172Y
我得到此输出:
RV49C-J0AUT-S172Y
这是我最初得到的,但我并没有全力以赴
例如
这是一个12个字符的字符串:
char = B1NS8XMA0LO5
我要获取此输出:
separated = B1NS-8XMA-0LO5
我总是可以将原始代码中的数字改为4:
separated = "-".join(re.findall('.{%d}' % 4, string))
但我不能保持这种方式,因为用户输入会随时间变化,我希望根据用户输入完成此操作,我希望字符被分成相等的部分,并用连字符分隔(就像我在输出部分中所做的那样)
谢谢
解决方案
length = int(len(string) / 3)
separated = "-".join(re.findall('.{%d}' % length, string))
相关文章