C++ 编写一个函数,把字符串中的数字字符、英文字母字符和其它字符分开。
问题描述:
编写一个函数,把字符串中的数字字符、英文字母字符和其它字符分开。如对于字符串“12a:?3byu98!”,将其分解为三个独立的字符串“12398”、“abyu”和“:?!”。
要求以指针作为函数参数,主函数输入原字符串,分解后的三个字符串在主函数打印输出
#include <iostream>
#include <map>
#include <string>
using namespace std;map<string, string> fun1(string* p_str);int main() {string str;cout << "输入字符串:" << endl;getline(cin,str);map<string, string> maps;maps = fun1(&str);map<string, string>::iterator iter = maps.begin();while (iter != maps.end()) {cout << iter->first << " " << iter->second << endl;iter++;}return 0;
}map<string,string> fun1(string* p_str) {string temp = *p_str;int sum = 0;for (int i = 0; i < temp.length(); i++) {if ( (temp[i] >= 'A' && temp[i] <= 'Z') || ( temp[i] >='a' && temp[i] <='z' ) ) {sum++; continue;}if (temp[i] >='0' && temp[i]<='9') {sum++; continue;}sum++;}map<string,string> maps;maps.insert(pair<string,string> ("英文字符",""));maps.insert(pair<string, string>("数字字符", ""));maps.insert(pair<string, string>("其它字符", ""));for (int i = 0; i < temp.length(); i++) {if ((temp[i] >= 'A' && temp[i] <= 'Z') || (temp[i] >= 'a' && temp[i] <= 'z')) {string value = maps["英文字符"];maps["英文字符"] = value + temp[i];continue;}if (temp[i] >= '0' && temp[i] <= '9') {string value = maps["数字字符"];maps["数字字符"] = value + temp[i];continue;}string value = maps["其它字符"];maps["其它字符"] = value + temp[i];continue;;}return maps;}
C++ 编写一个函数,把字符串中的数字字符、英文字母字符和其它字符分开。相关推荐
- 接收输入的一行字符,统计出字符串包含数字的个数 2、编写一个程序,计算字符串中子串出现的次数 3、请输入星期几的第1个字母,用来判断是星期几,如果第1个字母一样,则继续判断第2个字母,依次类推。
1.接收输入的一行字符,统计出字符串包含数字的个数 list_1 = input('请输入一行字符串:') count = 0 for i in list_1:if '0' <= i <= ...
- LeetCode||有效的字母异位词(排列)--给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词
原题链接:https://leetcode-cn.com/problems/valid-anagram 题目描述: 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示 ...
- 编写程序,对用户输入的英文字符串中出现的英文字母进行提取 (不区分大小写,重复字母只计一次),并将提取的结果按照字母表顺序升序排列后输出。 例如,用户输入“I miss you.”,程序输出“i, m
编写程序,对用户输入的英文字符串中出现的英文字母进行提取 (不区分大小写,重复字母只计一次),并将提取的结果按照字母表顺序升序排列后输出. 例如,用户输入"I miss you." ...
- 7-65 字符串替换 (15 分) 本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 原字母 对应字母 A Z B Y C X D W … … X C Y B Z A
7-65 字符串替换 (15 分) 本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 输入格式: 输入在一行中给出一个不超过80个字符.并以回车结束的字符串. 输出格式: 输出在一行 ...
- 本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:
本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 原字母 对应字母 A Z B Y C X D W - - X C Y B Z A 输入格式: 输入在一行中给出一个不超过80个字符. ...
- 【Python】对一个字符串中的所有英文字母进行排序
题目 对一个字符串中的所有英文字母进行排序 栗子 字符串 a = 'hello word' 排序后结果: ['d', 'e', 'h', 'l', 'l', 'o', 'o', 'r', 'w'] c ...
- JAVA输出字符串中字母_Java输出字符串中的大写英文字母数,小写英文字母数以及非英文字母的三种方法...
import java.util.*; /** * 3.编写一个程序,输出一个字符串中的大写英文字母数,小写英文字母数以及非英文字母. 提示: 方法一:使用循环提取字符,判断字符是否在A-Z .a-z ...
- 字符串替换,将给定字符串中的大写英文字母按对应规则替换
本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换: 原字母 对应字母 A Z B Y C X D W - - X C Y B Z A 输入格式: 输入在一行中给出一个不超过80个字符. ...
- java 统计汉字个数_Java简单统计字符串中汉字,英文字母及数字数量的方法
本文实例讲述了java简单统计字符串中汉字,英文字母及数字数量的方法.分享给大家供大家参考,具体如下: package org.zhy.demo.algorithm; /** * 有一个字符串,其中包 ...
- java 字符串 数字个数_Java简单统计字符串中汉字,英文字母及数字数量的方法...
本文实例讲述了Java简单统计字符串中汉字,英文字母及数字数量的方法.分享给大家供大家参考,具体如下: package org.zhy.demo.algorithm; /** * 有一个字符串,其中包 ...
最新文章
- 百度地图应用开发(一)
- 为什么有TCP 的三次握手 和 四次挥手
- mysql ddl dql_MySQL的DDL和DML及其DQL数据库操作
- php三级分销系统制作_微分销商城系统创建三级微商分销体系方法
- Git初学札记(九)————EGit检出远程分支
- 创业公司是如何进行研发管理和绩效考核的?
- php的工作模式CGI,FastCGI,PHP-CGI与PHP-FPM(转)
- 自定义导航--wx.getMenuButtonBoundingClientRect() 万机兼容
- buf.readInt8函数详解
- 基于ZigBee的高压开关SF6气体泄漏监测系统
- IP地址的定义与分类
- 华为云notebook在线解压压缩包问题
- 基于Kinect Azure的多相机数据采集(一)
- 为什么有阿里云ACP认证好找工作呢?
- OpenGL中的颜色混合功能(一)
- 高中数学必修二立体几何中的向量方法(经典案例讲解)
- Jetpack学习-5-Navigation简单使用
- 计算机专业和软件工程专业哪个好就业率,从就业看专业:软件工程专业就业率异军突起...
- 基于Arduino的显示测量环境数据设计
- 图解:什么是二叉堆?
热门文章
- 当上项目经理才知道!Android快速转战Kotlin教程,年薪50W
- 苹果cmsv8手机免费黑色影视模板源码
- 表格里面html语言,与HTML网页设计语言中的表格
- python学完多少钱_Python学完后一般能拿多少钱?老男孩Python课程学习
- 去除element-ui中el-drawer标题自带黑色框
- US Domain Center 网站备份
- 三星半导体和三星显示在中国启动运营官方新媒体账号
- Ubuntu下解决:Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)
- FR8012HAQ利用ADC实现检测电池电压检测的解决方案
- 修改StudentInfo项目输出学生信息