在字符串"ab2b3n5n2n67mm4n2"中使用re取出字符串所有的数字,并组合出一个新的字符输出,并统计字符串中字母m出现的次数,统计每个字符串出现的字数,并使用字典输出
时间: 2024-03-03 11:51:55 浏览: 88
好的,我来解答你的问题。
使用 Python 的 re 模块可以轻松地匹配字符串中的数字,代码如下:
```python
import re
s = "ab2b3n5n2n67mm4n2"
digits = re.findall('\d+', s)
new_s = ''.join(digits)
print(new_s) # 输出:"23526742"
```
这段代码中,`\d+` 是一个正则表达式,匹配一个或多个数字。`re.findall()` 函数可以返回字符串中所有的匹配项,这里就是所有数字组成的列表。最后使用 `.join()` 方法将这些数字合并成一个新的字符串。
统计字符串中字母 m 出现的次数可以使用 Python 的字符串方法 `count()`,代码如下:
```python
m_count = s.count('m')
print(m_count) # 输出:2
```
统计每个字符串出现的字数,并使用字典输出,可以使用 Python 的 `collections` 模块中的 `Counter` 类。代码如下:
```python
from collections import Counter
char_count = Counter(s)
print(char_count) # 输出:Counter({'n': 6, '2': 3, 'm': 2, 'b': 2, '3': 1, '5': 1, '6': 1, '4': 1, 'a': 1})
```
这里使用 `Counter` 类统计了字符串中每个字符出现的次数,并将结果存储在一个字典中。输出结果是一个 `Counter` 对象,可以当做字典来使用。
希望我的回答能够帮助到你!
阅读全文