24小时热门版块排行榜    

查看: 2234  |  回复: 16

460104898

铜虫 (正式写手)

[交流] 一个华为编程大赛题 已有3人参与

判断包含通配符的匹配字符串是否完全匹配输入的字符串。
匹配字符串中包含的通配符仅有“*”和“?”,且通配符不会
连续出现。(要求完全匹配而不是包含)

蛮有意思的,大家可以编编。。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

囚
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

微尘、梦想

木虫 (知名作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖
看得不太懂,是不是匹配字符串是已知的,然后看看手工输入的字符串是不是和它一样啊?
任风云变幻,我笑对人生!
2楼2011-05-29 18:10:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

460104898

铜虫 (正式写手)

引用回帖:
Originally posted by 微尘、梦想 at 2011-05-29 18:10:26:
看得不太懂,是不是匹配字符串是已知的,然后看看手工输入的字符串是不是和它一样啊?

恩 。
只是输入的字符串可以有通配符。
囚
3楼2011-05-29 18:42:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

微尘、梦想

木虫 (知名作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖
CODE:
#include
void main(void)
{
        char *p="l*l?l?l*";
        char a[10];
        gets(a);
        if(strcmp(p,a)==0)
                printf("完全匹配!\n");
        else printf("不完全匹配!\n");

}

不知道是不是这个意思?如果仅仅是这样的话,好像没什么呀!
任风云变幻,我笑对人生!
4楼2011-05-29 18:59:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★
小木虫(金币+0.5):给个红包,谢谢回帖
引用回帖:
Originally posted by 微尘、梦想 at 2011-05-29 18:59:10:
[code]#include <stdio.h>
void main(void)
{
        char *p="l*l?l?l*";
        char a[10];
        gets(a);
        if(strcmp(p,a)==0)
                printf("完全匹配!\n";
        else printf("不完全匹配! ...

大哥,你别乱丢人好不。
5楼2011-05-29 19:16:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
微尘、梦想(金币+3): 谢谢参与! 2011-05-30 17:53:53
用Python 写了个无耻版。
CODE:
import re

str1 = raw_input("Check string:")
str2 = raw_input("Match string:")

str1 = str1.replace("*", "[A-Za-z0-9 ]*")
str1 = str1.replace("?", "[A-Za-z0-9 ]?")

match = re.compile(str1)

if match.match(str2):
    print "Perfect match."
else:
    print "Imperfact match."

这个版本的缺点就是只支持英语字母和数字。当然使用正则表达式,用Perl也可以很容易现实,甚至用sed+grep也可以。

不过,我想题目的要求还是用C语言写出直接的算法。所以还要讨论一下。

[ Last edited by holmescn on 2011-5-29 at 19:42 ]
6楼2011-05-29 19:37:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

微尘、梦想

木虫 (知名作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖
引用回帖:
Originally posted by holmescn at 2011-05-29 19:16:55:
大哥,你别乱丢人好不。

就说没怎么看懂啊,偶闪还不行嘛!
任风云变幻,我笑对人生!
7楼2011-05-29 19:47:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

微尘、梦想

木虫 (知名作家)

引用回帖:
Originally posted by holmescn at 2011-05-29 19:16:55:
大哥,你别乱丢人好不。

能不能给解释下这道题呀,真没看懂!
任风云变幻,我笑对人生!
8楼2011-05-29 19:49:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
dubo(金币+1): 这样说,很多人就明白了,呵呵 2011-05-29 21:41:45
微尘、梦想(金币+2): 谢谢参与! 2011-05-30 17:54:10
所谓通配符,就是一个字符能代替多个字符。这里只支持*和?

* 可以代替零个或多个字符
? 可以代替零个或一个字符

这样,如果给一个字符串是:  a?b?c
它可以匹配: aabbc, abbbc, acbcc .....
总之,就是?可以是任何一个字符,或者没有字符。

如果给个字符串是: a*b*c
那它可以匹配: aaaaaabbbbbbbc, abbbbbbbbc ......
总之 * 可以代替任何字符,任意多次,当然也包括没有字符。
9楼2011-05-29 20:09:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

微尘、梦想

木虫 (知名作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖
那看来偶还是老老实实待着,期待somebody的C语言版吧,唉……好想去闭关去,可是乱七八糟的一堆考试!
任风云变幻,我笑对人生!
10楼2011-05-29 20:17:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 460104898 的主题更新
普通表情 龙 兔 虎 猫 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 上海工程技术大学 激光智能制造课题组 2027级博士研究生招生 +5 oxidpl 2026-09-20 7/350 2026-09-27 10:43 by Equinoxhua
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:42 by 4IW0sJvtEqX8
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:26 by 4IW0sJvtEqX8
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:15 by 4IW0sJvtEqX8
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:03 by 4IW0sJvtEqX8
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 oeyPlfmMUpOC 2026-09-26 3/150 2026-09-27 09:13 by 4IW0sJvtEqX8
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 GxESXJmptOtQ 2026-09-25 4/200 2026-09-27 06:44 by XgCC8uTcwILl
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 GxESXJmptOtQ 2026-09-25 4/200 2026-09-27 06:42 by XgCC8uTcwILl
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 GxESXJmptOtQ 2026-09-25 4/200 2026-09-27 06:39 by XgCC8uTcwILl
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 GxESXJmptOtQ 2026-09-25 3/150 2026-09-27 06:32 by XgCC8uTcwILl
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 vQZoDrrm7mUF 2026-09-25 3/150 2026-09-27 06:08 by XgCC8uTcwILl
[找工作] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +5 vQZoDrrm7mUF 2026-09-25 5/250 2026-09-27 05:53 by XgCC8uTcwILl
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 vQZoDrrm7mUF 2026-09-25 4/200 2026-09-27 05:50 by XgCC8uTcwILl
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 vQZoDrrm7mUF 2026-09-25 4/200 2026-09-27 05:44 by XgCC8uTcwILl
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 vQZoDrrm7mUF 2026-09-25 3/150 2026-09-27 05:44 by XgCC8uTcwILl
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 vQZoDrrm7mUF 2026-09-25 6/300 2026-09-27 05:42 by XgCC8uTcwILl
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 PGTSwSC3F6nQ 2026-09-24 5/250 2026-09-25 11:19 by yhq9807
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 PGTSwSC3F6nQ 2026-09-24 7/350 2026-09-25 11:18 by yhq9807
[教师之家] 课题组招2027级博士 上海工程技术大学 激光智能制造方向 +4 oxidpl 2026-09-20 6/300 2026-09-24 20:37 by oxidpl
[基金申请] 师弟论文见刊大半年才想起来申请专利,还能抢救一下吗? +4 13108017953 2026-09-21 4/200 2026-09-24 10:06 by kudofaye
信息提示
请填处理意见