㈠ 用VB可以把输入法输入的东西过滤吗
可以,但我的方案是建立一个字符-拼音对照表,对照表可以生成在程序里,也可以存在MDB数据库里。至于国家一级、二级字库中每个汉字的拼音,Windows下有个文件能找到,你可以先搜一下。
这个方案我在1999年用过,在VB5+DAO下调试通过,但近些年是否有更好的方案我就不清楚了。
另外这个方案有个缺点:多音字问题,同一个汉字,可能有两种发音,比如‘单’,可以是‘Dan’也可以是‘Chan’,虽然程序可以通过词组来判断该选择哪种拼音,但程序智能化程度太高了,反而不容易操作。
㈡ VB 从字符串中去掉某段字符
mid(字符串,从第几个开始,长度) 在[字符串]中[从第几个开始]取出[长度个字符串]
例如 mid("iam123",4,3) 则返回 "123"
VB 字符串处理函数集
mid(字符串,从第几个开始,长度) 在[字符串]中[从第几个开始]取出[长度个字符串]
例如 mid("小欣无敌",1,3) 则返回 "小欣无"
instr(从第几个开始,字符串1,字符串2) 从规定的位置开始查找,返回字符串2在字符串1中的位置
例如 instr(1,"小欣无敌","小") 则返回 1,instr(2,"小欣无敌","小"),则返回 0 。 0 表示未找到
InStrRev(字符串1,字符串2,从第几个开始) 从规定的位置开始,从后住前查找,返回字符串2在字符串1中的位置,此处注意,虽是从后住前查找,但是返回的值还是从前往后算的。
例如 instrRev("小欣无敌","小",2) 则返回 2 ; instrRev("小欣无敌","欣",1) 则返回 0 ,因为它从"小欣无敌"的第1个字开始往前查找,所以找不到 。0 表示未找到
left(字符串,长度) 从[字符串]的左边开始返回[长度]个字符
例如 Left("小欣无敌,3) 则返回 "小欣无"
right(字符串,长度) 从[字符串]的右边开始返回[长度]个字符
例如 Right("小欣无敌",3) 则返回 "欣无敌"
ucase(字符串) 返回[字符串]的大写形式,只对英文字符有效
例如 ucase("xiaoXINwuDi") 则返回 "XIAOXINWUDI"
lcase(字符串) 返回[字符串]的小写形式,只对英文字符有效
例如 lcase("xiaoXINwuDi") 则返回 "xiaoxinwudi"
asc(字符) 返回[字符]的ascii编码,若有多个字符,则只返回首字符的ascii编码,和Chr()函数是一个可逆的过程
例如 asc("小") 则返回 -12127 ; asc("小欣无敌") 也返回 -12127
chr(ASCii编码) 返回[Ascii]编码所代表的字符,和Chr()函数是一个可逆的过程
例如 chr(-12127) 则返回 "小" ;chr(asc("小")) 则返回"小"(这里是为了说明asc和chr的可逆性,例用此特性可以加密文本)
trim(字符串) 返回去掉了前、后之后的[字符串]
例如 trim(" 小 欣 无敌 ") 则返回 "小 欣 无敌" ,中间的空格不受任何影响
string(个数,字符) 返回[个数]个[字符]
例如 string(3,"小") 则返回 "小小小" , 而 string(3,"小欣无敌") 也返回 "小",只有首字符才有效
space(个数) 返回[个数]个空格
例如 space(5) 则返回 " "
strconv(字符串,转换的类型) 将字符串转成指定的类型。常用的类型只有两个,vbwide 半角转成全角,vbNarrow 全角转成半角
例如 strconv("xiao",vbwide) 则返回 "XIAO",而strconv("XIAO",vbnarrow) 则返回 "XIAO"
’备注 vbwide = 4 ,vbnarrow = 8
len(字符串) 返回[字符串]的长度
例如 len("小欣无敌") 则返回 4
㈢ VB.net 过滤文字
dim a as string = replace(trim(textbox1.text),"TMD","") 'a 是过滤后的字符串,没有"TMD",
还有:if textbox1.text.indexOf("TMD")> -1 then exit sub
就这个之类的
㈣ VB特殊字符过滤
原字符串 = Replace(原字符串,"特殊字符1")原字符串 = Replace(原字符串,"特殊字符2")……原字符串 = Replace(原字符串,"特殊字符N")
㈤ VB 过滤其他字符串,只留下汉字
PrivateSubcmdGL_Click()
DimsAsString
DimstrAsString
DimmesAsString
DimiAsLong
mes=txtmain.Text
Fori=1ToLen(mes)
str=Mid(mes,i,1)
IfAsc(str)>255OrAsc(str)<0Then
s=s&str
EndIf
Next
Txtresult.Text=s
EndSub
两个textboxname:txtcmd
multiline:ture
--------------------------------------------------------
name:txtresult
multiline:ture
一个commandbuttonname:txtGL
㈥ vb代码中含有日文 如何在在中文版本上不显示乱码啊 给解决下吧 最好详细点哈 谢谢
你好,有一个比较好的方法:
1. 将 VB 代码复制到记事本里保存成一个文本文档。
2. 将该文档用 Word 打开(一定要是 Word 而不是记事本)
3. 文字编码选择”自动“或者”Shift-JIS5“
4. 将打开的文档重新另存为一个 txt 纯文本文档,同时将编码设置为简体中文的编码就可以啦。
5. 打开新的记事本文件,再将代码复制到 VB 窗口中。
㈦ vb过滤指定字符串
Private Sub Command1_Click()
Dim c As String, i As Integer
c = "\/:*?""<>|"
For i = 1 To Len(c)
If InStr(1, s, Mid(c, i, 1)) > 0 Then s = Replace(s, Mid(c, i, 1), "")
Next
End Sub
㈧ VB过滤字符串【求助】
DimintLenAsInteger
DimiAsInteger
DimstrCurrentAsString
intLen=Len(Text1.Text)
Fori=1TointLen
strCurrent=Mid(Text1,i,1)
IfstrCurrent="."Or(Asc(strCurrent)>=48AndAsc(strCurrent)<=57)Then
Text2=Text2&strCurrent
EndIf
Next