找回密码
 加入
搜索
查看: 1243|回复: 11

字符串处理问题

[复制链接]
发表于 2009-5-19 17:15:23 | 显示全部楼层 |阅读模式
本帖最后由 bbip 于 2009-5-19 21:56 编辑

我想从如下文本中提取所有的共享名和资源,该用什么函数进行处理呢? 我试了很多 都失败了...
求高手帮忙  谢谢啦


共享名       资源                            注释

-------------------------------------------------------------------------------
IPC$                                         远程 IPC                          
bak            D:\bak                          
image        D:\image                        
命令成功完成。
发表于 2009-5-19 17:23:40 | 显示全部楼层
你可以使用StringSplit()这个函数来,以空格做间隔,一行一行读出来做处理就能得到了。
 楼主| 发表于 2009-5-19 17:34:15 | 显示全部楼层
中间有很多空格 而且空格数量也不固定,用空格分割不太理想啊 而且 如果文本内容发生了变化  程序就要重写。太麻烦了  还有更好的方法吗?
 楼主| 发表于 2009-5-19 17:50:43 | 显示全部楼层
高手还没出现...........
发表于 2009-5-19 21:29:49 | 显示全部楼层
#include "array.au3"
$t = getpath(@ScriptDir & '\tmp.txt')
_ArrayDisplay($t)

Func getpath($file)
        if not FileExists($file) Then
                Return
                SetError(1)
        EndIf
        Local $array[1]
        $f = FileOpen($file, 0)
        While 1
                $chars = FileReadLine($f)
                If @error = -1 Then ExitLoop
                ;TrayTip("", $chars, 2)
                $path = StringRegExp(StringStripWS($chars,2), '[a-zA-Z]:(\\[^/:\*\?<>\\|]+)*', 2)
                if IsArray($path) Then
                        _ArrayAdd($array, StringStripWS(StringRegExpReplace($chars, '[a-zA-Z]:(\\[^/:\*\?<>\\|]+)*', ''), 3) & ',' & $path[0])
                EndIf
        Wend
        _ArrayDelete($array,0)
        FileClose($f)
        Return $array
EndFunc   ;==>getpath
发表于 2009-5-19 21:40:07 | 显示全部楼层
强大的正规则
 楼主| 发表于 2009-5-19 21:54:25 | 显示全部楼层
谢谢 pcbar   高手就是高手  正则表达式确实够强大  可惜  看不懂
发表于 2009-5-19 21:57:26 | 显示全部楼层
正则表达式强大
发表于 2009-5-20 08:14:41 | 显示全部楼层
7# bbip


[a-zA-Z]:(\\[^/:\*\?<>\\|]+)*
注释一下:
[a-zA-Z]:英文字母(大写或小写)后面紧跟一个冒号
(\\[^/:\*\?<>\\|]+)括号里面的内容为一组,类似数学表达式中的括号,\\表示"\",前一个\为转义符,后面的\\与此相同,[^/:\*\?<>\\|]+除了/:\*\?<>\|的字符重复1次或更多次
*括号中的内容重复0次或更多次
其实就是匹配一个合法的文件夹表达式
发表于 2009-5-20 08:19:36 | 显示全部楼层
学习周星星老师了~~~
 楼主| 发表于 2009-5-20 10:49:03 | 显示全部楼层
谢谢  pcbar   总算对表达式有所了解了
发表于 2009-5-21 20:48:56 | 显示全部楼层
收下,学习。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-10 10:23 , Processed in 0.083447 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表