救命!查找字符串!

prefix 2000-08-08 10:01:00
哪位大虾能帮帮我!我要用vb写一个Edit控件,其中有一FindText函数,我用winapi来写时发现它在win98下不能查找中文,但在nt下可以。所以要用其它方法。但我找不到其它方法。而且这个控件我是使用大部分winapi写的,包括选择文本,所以在处理文本选择时,winapi把 回车+换行 当做一个字符,但很多时候,比如InStr等查找时会把 回车+换行 当做两个字符(我用Strconv转换也一样),现向各位求救!谁能帮帮我,找到一种能快速查找字符串的方法(查找的字符串一般都会大于64K,而且很大),并且要能向上,向下查找。谢谢了!我等你救命呢!
...全文
224 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
prefix 2000-10-29
  • 打赏
  • 举报
回复
每人一点分数,算了吧。
shines77 2000-08-13
  • 打赏
  • 举报
回复
回车+换行 本来就是两个字节。
逐字节处理就像分割文件一样,用数组Byte()来做。
prefix 2000-08-12
  • 打赏
  • 举报
回复
Putao:
不知为何,发给你的信总说被拒收,怎么办?
Un1 2000-08-10
  • 打赏
  • 举报
回复
使用RichTextBox不行吗?
prefix 2000-08-10
  • 打赏
  • 举报
回复
我在写自己的Edit控件啦,如果行就不会这么惨了。
prefix 2000-08-09
  • 打赏
  • 举报
回复
如果用InStr行的话我也不会来问了。我会连InStr都不会用就去找WinApi吗?
而且InStr也有我所说的把 回车+换行 当做两个字符的问题。

Putao:
信收到了吗?
  • 打赏
  • 举报
回复
用InStr函数
FOR EXAMPLE IN MSDN
This example uses the InStr function to return the position of the first occurrence of one string within another.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".

' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)

' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)

' Comparison is binary by default (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.

MyPos = Instr(1, SearchString, "W") ' Returns 0.

Putao 2000-08-08
  • 打赏
  • 举报
回复
可以用逐字节查找法。
请与我联系,我们研究研究joft@126.com

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧