五猫橙 发表于 2009-9-9 18:19:17

如何重复获取字段

本帖最后由 五猫橙 于 2009-10-10 09:43 编辑

我更正一下.貌似说的不太明白
比如有一段是这样的:

user:999 pass:000
user:dsf pass:236
user:daf pass:568

我想获取了以后登录一个FTP:
ftp://user:pass@1.1.1.1/
以验证USER&PASS的有效性 然后写到一个txt里面

我的问题就是..每次获取只会获取第一对user&pass..如何获取第二对第三对一直到第N对呢.而且如何判断这段到底有多少对USER&PASS...

afan 发表于 2009-9-9 19:08:41

作用是? 一起显示出来不就结了

lynfr8 发表于 2009-9-13 16:03:09

user:(.*) pass:(.*)

五猫橙 发表于 2009-10-10 09:43:56

更正了一下.期待解答.
感谢上面两位..虽然没得到答案..

wisly 发表于 2009-10-10 10:14:52

如果你可以稍微修改下输入格式的话,可以用IniReadSection嘛

五猫橙 发表于 2009-10-10 10:34:20

如果不改呢:face (32):

wisly 发表于 2009-10-10 10:52:39

那就_FileReadToArray再处理出一个2维数组出来
我还是觉得前者更方便

maker 发表于 2009-10-10 11:19:07

用正则取不方便?都是直接到数组的

五猫橙 发表于 2009-10-10 11:48:55

8# maker


可以给个例子吗?

afan 发表于 2009-10-10 12:17:52

3#不是给出了例子

wisly 发表于 2009-10-10 12:22:23

我也想知道如何对一个文件的多行内容通过正则匹配到一个数组?

五猫橙 发表于 2009-10-10 12:45:42

3L的例子是对的...不过..AU3里面怎么用这个找到匹配的值..而且表达出来呢...

afan 发表于 2009-10-10 13:08:46

将以下这段保存为'0.txt'
user:999 pass:000
user:dsf pass:236
user:daf pass:568#include <File.au3>
Dim $aArray
_FileReadToArray('0.txt', $aArray)
For $i = 1 To $aArray
        $a = StringRegExp($aArray[$i], 'user:(.*) pass:(.*)', 3)
        MsgBox(0, 'user: ' & $a, 'pass: ' & $a)
Next

五猫橙 发表于 2009-10-10 14:53:20

大致看懂了...不过还是有些疑问..能写一下注释吗?

afan 发表于 2009-10-10 15:02:44

_FileReadToArray('0.txt', $aArray) ;读入文件到数组$aArray
For $i = 1 To $aArray
      $a = StringRegExp($aArray[$i], 'user:(.*) pass:(.*)', 3) ;在数组中正则匹配
      MsgBox(0, 'user: ' & $a, 'pass: ' & $a) ;$a为匹配到的第一个元素,$a为匹配到的第二个元素
Next
页: [1] 2
查看完整版本: 如何重复获取字段