Python 正则表达式:如何拆分具有一定长度的单词上的字符串
我需要检查字符串中的一些单词的数量,并使用Python 正则表达式:如何拆分具有一定长度的单词上的字符串,python,regex,Python,Regex,我需要检查字符串中的一些单词的数量,并使用 len(re.split('[А-Яа-яЁё]{5,}', s)) 但它的工作方式不正确,并且字符串“МаСаа,Баааааааааа 它回来了 ['', ', ', ''] 我应该换什么衣服才能买到 ['Москва', 'Вавилова'] 为什么要量化你自己?让我们这样做: 输出: [(4, 3), (2, 1), (5, 1), (6, 1)] # (word-length, count) defaultdict(<type
len(re.split('[А-Яа-яЁё]{5,}', s))
但它的工作方式不正确,并且字符串“МаСаа,Баааааааааа
它回来了
['', ', ', '']
我应该换什么衣服才能买到
['Москва', 'Вавилова']
为什么要量化你自己?让我们这样做:
输出:
[(4, 3), (2, 1), (5, 1), (6, 1)] # (word-length, count)
defaultdict(<type 'list'>,
{2: ['oh'], 4: ['tata', 'tata', 'tata'], 5: ['ohhhh'], 6: ['ohhhhh']})
使用a也会给你以下词语:
d = defaultdict(list)
for w in (w.strip() for w in text.split(",")):
d[len(w)].append(w)
print(d)
输出:
[(4, 3), (2, 1), (5, 1), (6, 1)] # (word-length, count)
defaultdict(<type 'list'>,
{2: ['oh'], 4: ['tata', 'tata', 'tata'], 5: ['ohhhh'], 6: ['ohhhhh']})
defaultdict(,
{2:['oh'],4:['tata','tata','tata'],5:['ohhhh'],6:['ohhhh']})
但是你必须在之后得到列表。为什么要量化你自己?让我们这样做:
输出:
[(4, 3), (2, 1), (5, 1), (6, 1)] # (word-length, count)
defaultdict(<type 'list'>,
{2: ['oh'], 4: ['tata', 'tata', 'tata'], 5: ['ohhhh'], 6: ['ohhhhh']})
使用a也会给你以下词语:
d = defaultdict(list)
for w in (w.strip() for w in text.split(",")):
d[len(w)].append(w)
print(d)
输出:
[(4, 3), (2, 1), (5, 1), (6, 1)] # (word-length, count)
defaultdict(<type 'list'>,
{2: ['oh'], 4: ['tata', 'tata', 'tata'], 5: ['ohhhh'], 6: ['ohhhhh']})
defaultdict(,
{2:['oh'],4:['tata','tata','tata'],5:['ohhhh'],6:['ohhhh']})
但是您必须在之后获得len()
列表。试试这个
re.findall('[А-Яа-яЁё]{5,}', 'Москва,Вавилова')
来自文件
re.findall
全部归还
字符串中模式的非重叠匹配,如字符串列表
re.split
按出现的模式拆分字符串。试试这个
re.findall('[А-Яа-яЁё]{5,}', 'Москва,Вавилова')
来自文件
re.findall
全部归还
字符串中模式的非重叠匹配,如字符串列表
re.split
按模式出现次数拆分字符串。s.Split(',')
或re.findall('5,}',s)
?s.Split(',')
或re.findall('5,}',s)
,而此代码可以回答问题,提供关于如何和/或为什么解决问题的附加上下文将提高答案的长期价值。虽然此代码可能会回答问题,但提供关于如何和/或为什么解决问题的附加上下文将提高答案的长期价值。