qq342252004 发表于 2010-6-2 11:13:24

如何取得\\中的数据?(已解决)

本帖最后由 qq342252004 于 2010-6-2 12:12 编辑

321\abcd\asdasdasd
123\efgh\efgerg
456\aabbcc\ohjtpyhkof

取得的结果为 abcd   efgh   aabbcc

Joo 发表于 2010-6-2 11:25:14

我不知道AutoIT里面有没c++里的那种 string的操作 来取一个一个的字符

可以首先从string第一个开始取值,跟"\"比较,如果相同的话,接下来的开始赋值到一个字符串中,遇到"\"终止,如果遇不到的话就丢弃。

大概思路就是这样吧。

qq342252004 发表于 2010-6-2 12:12:32

Dim $s
$s="321\abcd\asdasdasd"
$s="123\efgh\efgerg"
$s="456\aabbcc\ohjtpyhkof"

For $i=0 To 2 Step 1
$a=StringSplit($s[$i],"\")
MsgBox(0,"",$a)
Next

jhun 发表于 2010-6-2 12:19:43

$aa=StringRegExp("321\abcd\asdasdasd","(?<=\\).*?(?=\\)",1)
MsgBox(0,"",$aa)

水木子 发表于 2010-6-2 12:21:00

Local $sReg
$sText = '321\abcd\asdasdasd' & @CRLF & _
                '456\aabbcc\ohjtpyhkof' & @CRLF & _
                '123\efgh\efgerg'

$aReg = StringRegExp($sText, '\\(.*)\\', 3)
For $i = 0 To UBound($aReg) - 1
        $sReg &= $aReg[$i] & @CRLF
Next
MsgBox(0, '', $sReg)

qj395202409 发表于 2010-6-2 13:04:35

高手众多啊   学习了
页: [1]
查看完整版本: 如何取得\\中的数据?(已解决)