yinle 发表于 2009-7-16 00:22:57

新手继续昨天的问题求助

本帖最后由 yinle 于 2009-7-16 00:26 编辑

非常感谢对昨天发帖的回复第二个问题应该OK了 第一个问题不知道能不能再详细点

引用昨天的问题:
一、有关字符串的问题

例如有:字符串 “a256aaaa256bbbbbaa256aaab256bb256bbbb”

如果发现字符串‘256’就开始记录字符如果再发现‘256’就停止记录,将两个‘256’之间的字符串储存到变量或者文件,如果不是字符串尾继续查找下个‘256’并再做记录以及储存

我只知道 StringInStr 可以查子串的位置,但是读取后面的字符又不能像编程语言那样处理,而且我还不知道 StringInStr 能不能连续查找下一个。 难道需要建立数组将字符串所有字符导入到数组中来进行操作吗? 另外 还想问问 字符串中有中文的话 有没有什么要注意的事项。

二、 知道文件的网址,想下载到本地硬盘不知道有没什么函数可以直接调用,我在百度搜索“AU3 下载 脚本”“AU3 下载 文件”都没找到,就来求求老鸟们了

我今天看了下_StringBetween函数,发现我的问题中开始字符串和结束字符串要是一样的,不知道会出什么结果,而且我也不知道函数返回的变量类型是什么? 是返回数组还是返回字符串?另外_StringBetween里面还涉及到正则表达式,我就更蒙了!

麻烦能不能就我给的字符串给个代码出来 谢谢 我给的字符串如下:

fff"aaaa"bbbbbaa"aaabbb"bbbb"cccccc

上诉字符串中的引号就是开始字符串和结束字符串,我要获得的就是第一个"和第二个"之间的字符串
,然后是第三个和第4个之间的字符串,如果没有结束的"就获取一直到结尾的字符串,实际上我希望得到的是3个字符串:
1    aaaa   
2    aaabbb
3    cccccc

顽固不化 发表于 2009-7-16 09:51:32

举一反三,有了前面的例子,后面的应该可以解决

大绯狼 发表于 2009-7-16 09:59:42

用正则啦。。。其实很简单的

yinle 发表于 2009-7-16 11:36:59

:face (13):

你们的回复对于有基础的应该还可以,我是新手啊,麻烦给一行代码也好啊。

大绯狼 发表于 2009-7-16 12:46:16

这个不用正则,应该算是比较简单的字符串控制
#include <array.au3>
$rep="256"
$str="a256aaaa256bbbbbaa256aaab256bb256bbbb"
$str=StringRight($str,StringLen($str)-StringInStr($str,$rep,1)+1-StringLen($rep)) ;去头
$str=StringLeft($str,StringInStr($str,$rep,1,-1)+StringLen($rep)-1-StringLen($rep)) ;去尾
$arr=StringSplit($str,$rep,1)
_ArrayDisplay($arr)

yinle 发表于 2009-7-16 15:30:42

本帖最后由 yinle 于 2009-7-16 15:33 编辑

非常非常的感谢 :face (36):

话说正则 我昨天又找了一堆资料看 看得头大
用正则的话能简单吗?
页: [1]
查看完整版本: 新手继续昨天的问题求助