合法性校驗(yàn)有很多方法,要視情況而定,比如說可以用正則表達(dá)式,如果是數(shù)字,除了正則表達(dá)式,也可以用諸如TryParse這種方法。
新泰網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),新泰網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為新泰1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的新泰做網(wǎng)站的公司定做!
使用VB提供的取子串函數(shù)Mid(S,k,n);
函數(shù)Mid(S,k,n)的功能,從指定的字符串表達(dá)式S的第k位開始取連續(xù)的n個字符。
例如:S = "1234567890",Mid(S,1,3) ,返回"123"
例如:S = "1234567890",Mid(S,3,7) ,返回"3456789"
等等;
結(jié)合VB的IF語句,就可以實(shí)現(xiàn)你的要求;
If Mid("1234567890",1,3) = "123" Then
MsgBox("正確")
Else
MsgBox("錯誤")
End If
Option Explicit On
Option Strict On
Imports System
Module Program
Sub Main()
Dim s As String
Dim strs As String()
Dim fz,fm,n,m,t As Long
Console.Write("請輸入一個小數(shù):")
s=Console.ReadLine().Trim()
strs=s.Split("."C)
fz=CLng(strs(0))
fm=CLng(Math.Pow(10,strs(1).Length))
fz=fz*fm+CLng(strs(1))
n=fz
m=fm
While n Mod m0
t=n Mod m
n=m
m=t
End While
fz\=m
fm\=m
Console.WriteLine("{0}={1}/{2}",s,fz,fm)
Console.Write("Press any key to continue . . . ")
Console.ReadKey(True)
End Sub
End Module
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
If System.Text.Encoding.Default.GetByteCount(TextBox1.Text) = 11 And e.KeyChar Chr(8) Then
e.Handled = True
Else
e.Handled = False
End If
End Sub
這個不太完善,是假設(shè)原來文本長度已經(jīng)有11就不允許繼續(xù)輸入,因?yàn)榕袛喈?dāng)下輸入的是漢字還是英文很麻煩。
e.KeyChar Chr(8)這句是保證任何時候Backspace鍵都要有效。
希望能對你有所幫助。