输入字符串,将字符串中数字字符构成新串,并输出
时间: 2023-05-31 12:20:54 浏览: 145
### 回答1:
可以使用正则表达式来匹配字符串中的数字字符,然后将其构成新的字符串输出。
具体实现可以参考以下代码:
```python
import re
s = input("请输入字符串:")
nums = re.findall(r'\d', s) # 使用正则表达式匹配数字字符
new_str = ''.join(nums) # 将匹配到的数字字符构成新的字符串
print("数字字符构成的新串为:", new_str)
```
运行程序后,输入一个字符串,程序会自动匹配其中的数字字符,并将其构成新的字符串输出。
### 回答2:
输入字符串后,我们需要遍历整个字符串,判断其中哪些字符是数字字符,然后将这些数字字符添加到一个新的字符串中去。具体实现的步骤如下:
1. 定义一个空字符串,用于存储数字字符构成的新串。
2. 遍历输入的字符串,判断每个字符是否为数字字符。判断方法可以使用isdigit()函数,如果返回值为True,则说明该字符是数字字符。
3. 如果该字符是数字字符,则将其添加到新字符串中。
4. 遍历完整个字符串后,输出新字符串即可。
下面是具体的代码实现:
```
input_str = input("请输入字符串:")
new_str = ''
for char in input_str:
if char.isdigit():
new_str += char
print("数字字符构成的新串为:", new_str)
```
运行程序后,输入任意的字符串,即可输出其中的数字字符构成的新串。
例如,输入字符串为 "Hello123World456",则输出的新串为 "123456"。
### 回答3:
题目中要求我们从一个字符串中提取出数字字符构成新字符串,并输出该字符串。实现这个问题的方法有很多,下面讲解两种常用的方法。
方法一:循环遍历字符串
这种方法是最简单直接的方法,我们可以通过循环遍历输入的字符串中每一个字符,然后判断是否为数字字符,如果是数字字符,就将其加入到新的字符串中。
具体代码如下:
```python
def extract_num(str):
res = ""
for i in range(len(str)):
if str[i].isdigit():
res += str[i]
return res
str = input("请输入字符串:")
res = extract_num(str)
print(res)
```
方法二:使用正则表达式
使用正则表达式可以更方便地匹配数字字符,同时也可以减少循环遍历字符串的时间复杂度。
具体代码如下:
```python
import re
def extract_num(str):
pattern = re.compile('\d+')
res = re.findall(pattern, str)
return ''.join(res)
str = input("请输入字符串:")
res = extract_num(str)
print(res)
```
这里使用re模块中的compil函数构建正则表达式的模式,"\d"表示匹配数字字符,"+"表示匹配一个或多个数字字符。然后使用re.findall()函数查找所有匹配的子串,并使用.join()函数将结果连接成一个字符串输出。
以上两种方法都可以有效地实现从字符串中提取数字字符构成新字符串的功能,具体使用哪种方法,取决于个人的编程经验和问题的实际情况。