任意输入一字符串,提取该字符串中的非字母和数字字符构成新串并返回给调用函数输出,请帮我编写一个这样的程序
时间: 2024-02-06 20:09:28 浏览: 67
好的,可以使用 Python 编写一个简单的程序来实现这个功能。代码如下:
```python
def extract_non_alnum_chars(string):
non_alnum = ""
for char in string:
if not char.isalnum():
non_alnum += char
return non_alnum
```
这个函数接受一个字符串作为输入,并且在函数中遍历该字符串中的每一个字符,如果该字符不是字母或数字,则将其添加到 `non_alnum` 变量中。最后,函数返回 `non_alnum` 变量,即提取出的非字母和数字字符构成的新串。
你可以调用这个函数并将一个字符串作为参数传入来测试它是否正确。例如:
```python
string = "Hello, World! This is a test string."
non_alnum = extract_non_alnum_chars(string)
print(non_alnum)
```
输出结果是:
```
, ! .
```
相关问题
任意输入一字符串,提取该字符串中的非字母和数字字符构成新串并返回给调用函数输出。c语言
可以使用标准库函数isalnum()来判断一个字符是否为字母或数字,然后遍历字符串,将非字母和数字的字符拼接成新的字符串即可。
示例代码如下:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void extract_non_alnum(char *str, char *result) {
int i, j;
int len = strlen(str);
for (i = 0, j = 0; i < len; i++) {
if (!isalnum(str[i])) {
result[j++] = str[i];
}
}
result[j] = '\0';
}
int main() {
char str[100] = "abc123!@#def456";
char result[100];
extract_non_alnum(str, result);
printf("Original string: %s\n", str);
printf("Extracted string: %s\n", result);
return 0;
}
```
输出结果为:
```
Original string: abc123!@#def456
Extracted string: !@#
```
帮我写一下代码:任意输入一字符串,提取该字符串中的非字母和数字字符构成新串并返回给调用函数输出
当然可以,以下是 Python 代码实现:
```python
def extract_non_alphanumeric_characters(string):
"""
任意输入一字符串,提取该字符串中的非字母和数字字符构成新串并返回给调用函数输出
"""
result = ""
for char in string:
if not char.isalnum():
result += char
return result
# 测试
string = "Hello, World! 123."
result = extract_non_alphanumeric_characters(string)
print(result) # 输出: ", !."
```
代码中,`extract_non_alphanumeric_characters` 函数接收一个字符串作为参数,然后遍历该字符串中的每个字符,判断字符是否是字母或数字,如果不是,则加入到 `result` 字符串中。最后返回 `result` 字符串,即为提取出的非字母和数字字符构成的新串。
阅读全文