老师给小学生门布置了一些作业,让它们按照一个模版写一些字符串交上来,同学们把作业交上来了,问题来了,这么多的作业老师批改不过来,现在请你帮老师写一个程序,帮助老师确定各个字符串是否合格。首先老师有一个匹配模版,比如是“aa[123]bb”这一个字符串,同学们交的各种作业字符串如aa1bb、aa2bb、aa3bb都算是正确匹配看,而aacbb就是错误的字符串。(即待查字符串对应于模版方括号内的部分,应该为方括号内字符串的一个子字符)。我们需要做的就是按照模版,找出正确的字符串和所在的行。输入输入的第一行为一个整数n,表示有多少个学生的作业,即有多少行需要检查的字符串。(1<=n<=50) 中间为n行字符串,代表着n个学生们写的作业。每个字符串长度小于50。 最后一行为1行字符串,代表着老师给的匹配模板。输出输出合格的字符串的行号和该字符串。(中间以空格隔开)
样例输入
4
Aab
a2B
ab
ABB
a[a2b]b
样例输出
1 Aab
2 a2B
4 ABB
提示
被检测的字符串中只有数字和字母
请问这个的算法和程序是怎样的?
急需算法和程序 要正确的C++ 源代码 能运行的
你只要学会正则表达式和怎样写代码就可以了,很简单的。
但是现在急需算法和程序
@小小小小小小小小小:
你首先的明白啥叫急需,我现在也急需几千万,你可以帮忙吗?
你连语言都不说的,啥都不懂,能急成啥样?考试不过?
股市都已经只有3500点了,我得赶紧救市去,那儿比较急。
将模板字符串转换为一个满足你规则的正则表达式,然后匹配一下就ok了~
就是不知道怎么写程序啊!!!
先学习下使用现成的工具来实现题目要求:
http://www.cnblogs.com/zhuyp1015/archive/2012/04/08/2438232.html
然后你再看 stl regex 的源码,将主要逻辑转换成你的代码。
明白需求了,您可能基本没学过c++,需要完成这么一个作业。可以某宝上找找,应该有提供这个服务的。