任何在很长的字符串中快速找到子字符串,并且能给出所在位置(为了在父字符串中对子字符串编辑)
谢谢
instr 函数不行吗?
函数原型
InStr([start,]string1,string2[,compare])
表达式InStr([起始,] 接受搜索的字符串,被搜索的字符串[,匹配模式])
参数
start 可选参数。为数值表达式,设置每次搜索的起点。如果省略,将从第一个字符的位置开始。如果 start 包含 Null,将发生错误。如果指定了 compare 参数,则一定要有 start 参数。
string1 必要参数。接受搜索的字符串表达式。
string2 必要参数。被搜索的字符串表达式。
compare 可选参数。指定字符串比较。如果 compare 是 Null,将发生错误。如果省略 compare,Option Compare 的设置将决定比较的类型。
Compare 参数设置为:
常数 值 描述
vbUseCompareOption -1 使用Option Compare 语句设置执行一个比较。
vbBinaryCompare 0 执行一个二进制比较(即 英文字符区分大小写)。
vbTextCompare 1 执行一个按照原文的比较(即 英文字符不区分大小写)。
vbDatabaseCompare -2 仅适用于Microsoft Access,执行一个基于数据库信息比较。
返回值 从 Start 位置开始,在 String1 中寻找 String2 ,如果没有找到,则返回0。如果 String1 或 String2 为Null,则返回Null,其他情况返回 String2 在 String1 中的起始位置。
------------------
如果你字符串太长,超过了 string 的限制,那就无法保存在内存里,就只能保存到在文件里了。这种情况下,对文件进行分段读取并查找即是了。