中英文字符串搜索(like 或 Instr)

marksmith 2003-05-20 01:15:00
对一包含有中英文的字符串进行搜索(like 或 Instr)
如何使搜索到的中文是 case sensitive 但搜索到的英文是 case insenditive?
...全文
63 22 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
koa3000 2003-05-29
  • 打赏
  • 举报
回复
koa3000@hotmail.com
marksmith 2003-05-29
  • 打赏
  • 举报
回复
boywang(大力水手):

你能寄压缩了的 Project 给我吗:
qwerfvc@yahoo.com
我可把我的压缩了的Project给你寄去(12k)。
boywang 2003-05-29
  • 打赏
  • 举报
回复
我的电脑是没出现楼主说的情况啊!
InStr(1, "人和入", "入")=3
Len("人")=1
vb中的字符默认是unicode的。
GB和Big5就是编码的不同吧,都是属于unicode的呀!
blasterboy 2003-05-29
  • 打赏
  • 举报
回复
up
marksmith 2003-05-29
  • 打赏
  • 举报
回复
koa3000(koa):

寄去了, 谢谢.
marksmith 2003-05-28
  • 打赏
  • 举报
回复
有谁能帮我?
我可把压缩了的Project给你寄去(12k)。
marksmith 2003-05-27
  • 打赏
  • 举报
回复
试一下Len("人")看你能得到1还是2?
得2就是GB了。
你用的中文Windows98?XP?
koa3000 2003-05-27
  • 打赏
  • 举报
回复

VB6 你在那儿选择的采用GB方案?
marksmith 2003-05-27
  • 打赏
  • 举报
回复
你别汗了, 我很菜:
GB: 组成中文的一种办法,用两个字符组成一个汉字. 在VB6用这办法, 在网上用UnitCode?(请高手讲解一下.)
比如:
Print Asc(Mid("人", 1, 1)), Asc(Mid("人", 2, 1))
Print Asc(Mid("入", 1, 1)), Asc(Mid("入", 2, 1))
会得到:
200 203
200 235
koa3000 2003-05-26
  • 打赏
  • 举报
回复


汗,GB是什么东东?
koa3000 2003-05-23
  • 打赏
  • 举报
回复

来这儿坐擂吧。
出现你的情况的,估计为0;
出现我的情况的InStr(1, "人和入", "入", 1)=3 ,估计100%

hiahia
marksmith 2003-05-23
  • 打赏
  • 举报
回复
>确认一下,人 是 人民的人? 入 是进入的入?
是的.

>这边没有出现你的情况
那俺也糊涂了,试过InStr(1, "人和入", "入", 1)?
有谁愿意试一下我的试验程序,留下Email.
marksmith 2003-05-23
  • 打赏
  • 举报
回复
koa3000(koa):

Hahaha,坐擂,有意思~~~
你的情况 InStr(1, "人和入", "入", 1)=3 估计?试过?
如果试过,请注意,在GB,Len("人和入")=6, 你用的是GB吗?
qingming81 2003-05-22
  • 打赏
  • 举报
回复
这个问题倒是很新鲜啊!“人”可查“入”,为什么“人”就不可查“大”“夫”“天”呢,难道一人可入,二人三人就完了?
koa3000 2003-05-22
  • 打赏
  • 举报
回复

汗~~~~ “人“和”入"一个是大写一个小写…………确实没听说过。
确认一下,人 是 人民的人? 入 是进入的入?
那俺就糊涂了。
这边没有出现你的情况。
koa3000 2003-05-21
  • 打赏
  • 举报
回复

楼上的意思是,"人和入" 近似,所以用 人 来查, 入 也可以得到?
这个比较夸张了点。

要么你做一个转换,当用人来查时 ,你查两次,
int1=InStr(1, "人和入", "入", 1)
int2=InStr(1, "人和入", "人", 1)
if int1<1 then
Print int2
else int2<1 then
Print int1
else
Print iif(int1>int2,int2,int1)
endif
marksmith 2003-05-21
  • 打赏
  • 举报
回复
人“和”入"一个是大写一个小写! 没听过?看看组成“人“和”入"的字符你就明白为什么我要这样说啦。
看来你们都没有试过,InStr(1, "人和入", "入", 1) (或 Like) 能由"入"查到"人"! "因为" InStr(1, "人和入", "入", 1) 是 case insensitive. 改为 InStr(1, "人和入", "入", 0)就没有这样的问题。
我不希望得到这样的结果,我要搜索到的中文是 case sensitive,但同时我又希望但搜索到的英文是 case insenditive, 所以来问你们。
marksmith 2003-05-21
  • 打赏
  • 举报
回复
Print InStr(1, "人和入", "入", 1) 得 1。 要又GB, 被要 copy 我的。
marksmith 2003-05-21
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Print InStr(1, "È˺ÍÈë", "Èë", 1)
Print Left("ÈË", 1), Right("ÈË", 1)
Print Left("Èë", 1), Right("Èë", 1)
End Sub
marksmith 2003-05-21
  • 打赏
  • 举报
回复
查"人"查到"入"!!!!!!!!!!
加载更多回复(2)

7,785

社区成员

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

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