免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1992 | 回复: 6
打印 上一主题 下一主题

c语言中的正则 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-22 16:08 |只看该作者 |倒序浏览
hi all~

有两个序列:

第一个:
vb_login_username=
LoginForm_Login=
in_benutzername=
form_userlogin=
form_loginname=
login_username=
securityLogin=
logonusername=
data_nickname=
emagicloginid=
email_address=
Email_Textbox=
hp_user_name=
Benutzername=
credential_0=
EmailAddress=
newLoginName=
strCodUtente=
use_username=
YaBBusername=
form_userid=
accountname=
cugUsername=
login_email=
mailaddress=
newusername=
spielername=
txtUsername=
screenname=
user_email=
membername=
nutzername=
j_username=
horde_user=
cardNumber=
A_userName=
l_username=
log_nummer=
login_name=
logon_name=
logon_user=
pop_login=
txtUserID=
loginname=
machlogin=
matchcode=
member_ID=
frmUserID=
fmembernr=
acct_name=
user_mail=
user_name=
benutzer=
acctname=
anwender=
log_name=
login_id=
nickform=
nickname=
txtlogin=
username=
kennung=
account=
insname=
loginid=
my_user=
sign-in=
user_id=
webuser=
bor_id=
codice=
iLogin=
emailn=
f_user=
p_user=
loginl=
member=
userid=
U_Name=
ulogin=
z_name=
cuser=
Anick=
alias=
auser=
email=
gecko=
login=
p_uid=
uname=
kdid=
kdnr=
cpid=
NAME=
nick=
user=
log=
key=
uid=
uin=
usr=
an=
id=
un=
u=

第二个:

user_security_password=
LoginForm_Password=
vb_login_password=
newLoginPassword=
securityPassword=
Password_Textbox=
gallerypassword=
nutzer_password=
login_password=
login_passwort=
user_password=
user_passwort=
form_password=
form_passwort=
intCodSegreto=
logonpassword=
userpassword=
credential_1=
emagicpasswd=
machpassword=
YaBBpassword=
cugPassword=
frmUserPass=
in_passwort=
member_PASS=
newpassword=
txtPassword=
txtpasswort=
A_Password=
horde_pass=
j_password=
l_password=
login_pass=
z_password=
upassword=
upasswort=
Loginpass=
cuserpass=
data_pass=
Apassword=
acct_pass=
iPassword=
logon_pwd=
passwortm=
secretkey=
userpass=
kennwort=
p_passwd=
passwort=
paswwort=
log_pass=
passform=
password=
userpwd=
use_pwd=
pwlogin=
passwrd=
my_pass=
inspass=
segreto=
form_pw=
webpass=
f_pass=
geckos=
hp_pwd=
login2=
passwd=
U_Pass=
apass=
p_key=
cppw=
pass=
pin=
psw=
pwd=
UPW=
pw=
ap=
up=
p=

能否帮写个匹配这两个序列的高效的正则表达式啊?

论坛徽章:
0
2 [报告]
发表于 2008-12-22 16:11 |只看该作者
perl中的
/^.*?=/
有兼容perl正则的C正则库

论坛徽章:
0
3 [报告]
发表于 2008-12-22 16:18 |只看该作者
不会吧。
上面那个能和别的区别吗?
例如
abc=

论坛徽章:
0
4 [报告]
发表于 2008-12-22 16:20 |只看该作者
原帖由 zengrui0342 于 2008-12-22 16:18 发表
不会吧。
上面那个能和别的区别吗?
例如
abc=

你的序列有啥规律?

论坛徽章:
0
5 [报告]
发表于 2008-12-22 16:26 |只看该作者
原帖由 zengrui0342 于 2008-12-22 16:18 发表
不会吧。
上面那个能和别的区别吗?
例如
abc=


你的文件格式就是KEY=VALUE 的关系,
用/^([^ =]+)=([^\n]+)/,把KEY和VALUE取出来。。
然后要有一个数组包含所有的预定义KEY,用来判断取到的KEY是否是合法的。
然后还要有一个配置信息结构体,用来存放所有取到的VALUE。。

论坛徽章:
0
6 [报告]
发表于 2008-12-22 16:34 |只看该作者
对,就是判断是否合法的时候我想用一个正则来代替
(username=)|(login=)|(u\)|(usr=)
之类的话就怕满足不了效率要求

论坛徽章:
0
7 [报告]
发表于 2008-12-22 16:55 |只看该作者
原帖由 zengrui0342 于 2008-12-22 16:34 发表
对,就是判断是否合法的时候我想用一个正则来代替
(username=)|(login=)|(u\)|(usr=)
之类的话就怕满足不了效率要求

已经试过了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP