如何提取这样的字符串
本帖最后由 xg911335 于 2009-7-21 12:37 编辑2009-07-20 11:35:30 604093 INFOtest OpenUserV5 sky:94861806897405121281, UserID:54173(54173 ), 登陆的帐号:54173, 密码:11111, 类型:1(1), 类型:1
2009-07-20 11:35:30 604093 INFOtest OpenUserV5 sky:94861806897405121281, UserID:54321(54321 ), 登陆的帐号:54321, 密码:333333, 类型:1(1), 类型:1
2009-07-20 11:35:30 604093 INFOtest OpenUserV5 sky:94861806897405121281, UserID:54173(54173 ), 登陆的帐号:54173, 密码:11111, 类型:1(1), 类型:1
2009-07-20 11:35:30 604093 INFOtest OpenUserV5 sky:94861806897405121281, UserID:54173(54173 ), 登陆的帐号:54173, 密码:11111, 类型:1(1), 类型:1
2009-07-20 11:35:30 604093 INFOtest OpenUserV5 sky:94861806897405121281, UserID:55555(55555 ), 登陆的帐号:55555, 密码:2222222, 类型:1(1), 类型:1
请问上面的文本中,如果读取密码啊?文本中有重复的帐号。
用$Input1来接收输入的帐号,$Button1来获取密码并把值赋给MSGBOX()。
给个列子。在下先谢过。 本帖最后由 lynfr8 于 2009-7-21 18:55 编辑
后面几位兄台已经给出非常完善的解决方法了 我晕。。。 呵呵,改了…… :face (35):晕,不知要提取哪些内容!
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form = GUICreate("正则提取密码 By lynfr8", 259, 76, 192, 124)
$Input = GUICtrlCreateInput("54173", 24, 24, 137, 21)
$Button = GUICtrlCreateButton("密码", 176, 24, 57, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
$user = StringRegExp(FileRead('user.txt'),'登陆的帐号:(\d+), 密码:(\d+)',3)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button
$userExists = ''
For $i= 0 to UBound($user) - 1 Step 2
If $user[$i]=GUICtrlRead($Input) And $userExists <> $user[$i+1] Then
MsgBox('','',$user[$i+1])
$userExists = $user[$i+1]
EndIf
Next
EndSwitch
WEnd
lynfr8太强大了啊 好像无所不会 佩服一下 嘘。。。别那么张扬
悄悄站内短信告诉我让我自己对着屏幕臭美一下就好了
别大庭广众的让大家看见嘛
让ACN真正的牛人看见了我就糗啦 本帖最后由 lynfr8 于 2009-7-21 02:30 编辑
正则这个东西入门还是不难的
关键是要灵活运用
论坛正则的资料也有
相关的贴也不少
狠下心来逼自己认真琢磨一下
一定会有砍获的! 非常感谢lynfr8兄。我就是没有找到什么正则的资料。顺便问一下,登陆的帐号:(\d+), 密码:(\d+)里面的(\d+)是什么意思? :face (30):还有更牛的 ..... 那我不活了 呵呵。。。这个我测试了一下。如果密码是字符串的无法提取。如密码:sdf123 密码:www.zutoit.net.cn
都不能提取 12# xg911335
一楼的全都是数字, \d+ 可以了。 密码的规律变了当然正则也要变啦~ 将6#的
$user = StringRegExp(FileRead('user.txt'), '登陆的帐号:(\d+), 密码:(\d+)', 3)
改成如下就可以吧~
$user = StringRegExp(FileRead('user.txt'), '登陆的帐号:(\d+), 密码:(\w+)', 3) 本帖最后由 xg911335 于 2009-7-21 11:49 编辑
晕。。刚刚找到怎么搞,就被你抢先了。呵呵。谢谢。这个加号是什么意思?
另外匹配密码:www.autoitx.com的结果显示是www.不能完全显示?
页:
[1]
2