游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2758|回复: 8

求一个截取字符串的算法!!!(帮帮忙啊)

[复制链接]

2

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2006-1-22 14:09:00 | 显示全部楼层 |阅读模式
....
.......
...........
1321565156aaaaa*****bbbbb1321321321
4t544545aaaaa*****bbbbb654654654
4787787784344aaaaa*****bbbbbuiuy88978989
...........
.........
.....

截取aaaaa   bbbbb  中间的*****
请问怎么才能把所有的*****都截取下来
[em17]

45

主题

222

帖子

229

积分

中级会员

Rank: 3Rank: 3

积分
229
发表于 2006-1-22 14:19:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

你那些aaaaa bbbbb是固定的不变的还是一个种规律。

2

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2006-1-22 14:29:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

aaaaa  bbbbb是固定不变的!!!
中间的*****是变化的@!

45

主题

222

帖子

229

积分

中级会员

Rank: 3Rank: 3

积分
229
发表于 2006-1-22 15:01:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

你可以用instr方法找到aaaaa的位置,以及bbbbb的位置,
再用mid方法得到中间的字串。
比如aaaaaxxxxxxxxbbbbb
用instr找到aaaaa的位置为1
实际的xxxx..xx的位置为1+5
用instr找到bbbbb的位置为14
mid("aa....bbbb",6,14-6)

2

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2006-1-22 18:44:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

要截取第2串字符呢?
关键是这串字符里面有若干个相同的aaaaa bbbbb

37

主题

171

帖子

177

积分

注册会员

Rank: 2

积分
177
发表于 2006-1-22 22:16:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

您看这样写可以满足你的要求吗?
  Dim abc As String, i As Integer, S1 As Integer, S2 As Integer
  abc = "ajsdklfjasl;fdaaaa1234bbbbasklfdjasl;jfdaaaa789bbbb"
  i = 1
  Do While i <> 0
    S1 = InStr(i, abc, "aaaa")
    If S1 = 0 Then Exit Do
    S2 = InStr(S1, abc, "bbbb")
    If S2 = 0 Then Exit Do
    Debug.Print Mid(abc, S1 + 4, S2 - S1 - 4)
    i = S2 + 4
  Loop

20

主题

451

帖子

470

积分

中级会员

Rank: 3Rank: 3

积分
470
发表于 2006-1-23 17:12:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

那个aaaa和bbbb之间还会出现aaaa或者bbbb吗?
如果不会出现的话用vb.net可以这样实现:
dim abc as string="ajsdklfjasl;fdaaaa1234bbbbasklfdjasl;jfdaaaa789bbbb"
dim temp() as string, I as Int16
temp=abc.split("aaaa")
for i= 1 to temp.getlength(0)
       if instr(temp(i-1),"bbbb")<>0 then temp(i-1)=microsoft.visualbasic.string.left(temp(i-1),instr(temp(i-1),"bbbb"))
next i
然后temp()这个数组保存的就是你要的东西

4

主题

7

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2006-1-24 03:37:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

function CenterStr(Src:String;Before,After:String):String;
var
    Pos1,Pos2:WORD;
    Temp:String;
begin
    Temp:=Src;
    Pos1:=Pos(Before,Temp);
    Delete(Temp,1,Pos1+Length(Before));
    Pos2:=Pos(After,Temp);
    if (Pos1=0) or (Pos2=0) then
    begin
      Result:='';
      Exit;
    end;
    Pos1:=Pos1+Length(Before);
    Result:=Copy(Src,Pos1,Pos2);
end;

2

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2006-1-24 15:09:00 | 显示全部楼层

Re:求一个截取字符串的算法!!!(帮帮忙啊)

谢谢高手们帮忙,在此先给大家拜个早年!!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-23 08:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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