Private Sub RichTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged
目前成都創(chuàng)新互聯(lián)公司已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站改版維護、企業(yè)網(wǎng)站設(shè)計、綏化網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
Dim pos = RichTextBox1.SelectionStart
Dim i As String = Regex.Matches(RichTextBox1.Text, "\bDim\b").ToString
RichTextBox1.SelectAll
RichTextBox1.SelectionColor = Color.Black
If Regex.IsMatch(RichTextBox1.Text, "\bDim\b") = True Then
For Each mat As Match In Regex.Matches(RichTextBox1.Text, "\bDim\b")
RichTextBox1.SelectionStart = mat.Index
RichTextBox1.SelectionLength = mat.Length
RichTextBox1.SelectionColor = Color.YellowGreen
Next
End If
RichTextBox1.SelectionStart = pos
RichTextBox1.SelectionLength = 0
End Sub
我做了一個更詳細的正則:
Friend Keys As String =
"\b(#Const|#If|Then|#Else|#Region|Delegate|Namespace|Class|End|Firend|Partial|Module|Interface|Enum|Shared|Overrides|Overloads|Structure|Let|Const|Dim|As|Private|Public|New|Static|Option|Private|Module|IsArray|IsDate|IsEmpty|IsError|IsMissing|IsNull|IsNumeric|IsObject|TypeName|VarType|Me|Option|Explicit|Mod|Like|Is|Not|And|Or|Xor|Eqv|Imp|Clear|Error|Raise|Error|Err|CVErr|On|Error|Resume|IsError|Collection|Add|Remove|Item|DDB|SLN|SYD|FV|Rate|IRR|MIRR|NPer|IPmt|Pmt|PPmt|NPV|PV|Do|Loop|For|Next|For|Each|Next|While|Wend|With|Choose|If|Then|Else|Select|Case|Switch|Call|Function|Property|Get|Property|Let|Property|Set|Sub|Date|Now|Time|DateAdd|DateDiff|DatePart|DateSerial|DateValue|TimeSerial|TimeValue|Date|Time|Timer|CBool|CByte|CCur|CDate|CDbl|CDec|CInt|CLng|CSng|CStr|CVar|CVErr|Fix|Int|Boolean|Byte|Currency|Date|Double|Integer|Long|Object|Single|String|Object|Atn|Cos|Sin|Tan|Exp|Log|Sqr|Randomize|Rnd|Abs|Sgn|Fix|Int|IsArray|Array|Option|Base|Dim|Private|Public|ReDim|Static|LBound|UBound|Erase|ReDim|DeleteSetting|GetSetting|GetAllSettings|SaveSetting|Chr|Format|LCase|UCase|DateSerial|DateValue|Hex|Oct|Format|Str|CBool|CByte|CCur|CDate|CDbl|CDec|CInt|CLng|CSng|CStr|CVar|CVErr|Fix|Int|Day|Month|Weekday|Year|Hour|Minute|Second|Asc|Val|TimeSerial|TimeValue|StrComp|StrConv|Format|LCase|UCase|Space|String|Len|Format|LSet|RSet|InStr|Left|LTrim|Mid|Right|RTrim|Trim|Option|Compare|Asc|Chr|AppActivate|Shell|SendKeys|Beep|Command)\b"
數(shù)據(jù)類型轉(zhuǎn)換函數(shù):
轉(zhuǎn)換函數(shù)
將表達式轉(zhuǎn)換成
cbool
boolean
cbyte
byte
ccur
currency
'只在vb7.0以下有效
cdate
date
cdbl
double
cint
integer
clng
long
csng
single
cstr
string
cvar
variant
‘只在vb7.0以下有效
cverr
error
'只在vb7.0以下有效
C#.net優(yōu)點:
運算符重載。不安全代碼(指針和固定內(nèi)存區(qū))、?無符號整數(shù)、移位運算。
VB的優(yōu)點:?
即時編譯、靜態(tài)事件綁定、條件異常捕獲、COM兼容類、寬松的類型檢查和變量聲明、Visual Basic Runtime庫、可選參數(shù)、帶參數(shù)屬性、模塊等語言特征、動態(tài)數(shù)組。
通過VB.NET開發(fā)好的程序絕對沒有問題(包括Direct X游戲開發(fā))。雖然VB.NET的資料少,但是只要C#支持的VB.NET都支持(大體上這樣,因為都要經(jīng)過MSIL中間環(huán)節(jié)。除了指針之類的VB.NET不支持C#支持,但是沒有多大實際用處)。
vb.net的資料以英文資料居多(只有英文資料才有看頭,中國的沒有什么好資料),得看看英文水平過不過關(guān)。還有VB.NET的ide也比C#的IDE好得多,代碼看得也舒服。(C#的大括號{}太煩人)。
至于VB6對C的幫助,只是理解上會容易一些,其它用處不大。有VB6的基礎(chǔ)學(xué)VBNET會方便一些,但是并不是會VB6就會VB.NET,它們差別也不小。
擴展資料:
NET、C#和ASP.NET之間的區(qū)別 :
1、NET是一個平臺,一個抽象的平臺的概念。
NET 平臺其本身實現(xiàn)的方式其實還是庫,抽象層面上來看是一個平臺。
基本可以理解的NET核心就是NETFramwork。
NETFramework包括兩個關(guān)鍵組成元素:
a. CommonLanguageRuntime,公共語言運行時(CLR0)-提供內(nèi)在管理,代碼安全性檢測等功能。
b. NETFrameworkClassLibrary,.NET 框架類庫(FLC)-提供大量應(yīng)用類庫,提高開發(fā)效率。
學(xué)習(xí)NET Framework 是所有.NET開發(fā)人員都必須的,否則開發(fā)NET程序永遠都是停留在‘外功’的招式,NETramework 是NET開發(fā)高手的‘內(nèi)功’修行之一。
2、C#是一個程序設(shè)計語言,僅僅是一個語言。
程序設(shè)計語言僅僅是為了方便開發(fā)人員和計算機溝通的工具,雖然 C#語法相對 C 和?C+要多一些,但是相對來看 C#語法都比較固定,這樣使用起來卻都很容易。我認可一位朋友說的,C#的語法更嚴謹!
這里回過來看看NET和C#的關(guān)系,不得不提的是NET程序的執(zhí)行過程。
C#符合NETCLR 中的公共語言運行規(guī)范。CLS:commonlanguagespecification,當然所有的NET Language 都是符合這個規(guī)范的例如:VB.NET、XAML 和 C++/CL等等。
C#需要符合NETCLS,是因為NETCLR和JAVA虛擬機類似,有一個中間語言共機器來執(zhí)行。所有不同語言的.NET代碼在執(zhí)行前會被編譯成同樣的中間語言(MSIL),所以所有NET 支持語言都必須符合符合CLS 規(guī)范。
P.S:如果做.NET3.0XAML開發(fā)的朋友,可以嘗試下ildasm.exe看看XAML的應(yīng)用程序,會發(fā)現(xiàn)原來 XAML其實很簡單。
3、ASP.NET是一個網(wǎng)站開發(fā)的技術(shù),僅僅是.NET框架中的一個應(yīng)用模型。
用微軟公司ASP.NET快速入門中的一句話來解釋,ASP.NET是用于生成基于Web的應(yīng)用程序的內(nèi)容豐富的編程框架。
ASP.net 和C#的區(qū)別:
編寫asp.net通常包括兩部分的代碼:網(wǎng)頁層和后臺處理層,網(wǎng)頁就是用標記語言來寫的,而網(wǎng)頁對應(yīng)的后臺處理程序則需要.net語言來完成,目前主要是采用c#和vb.net。
可以說整個的asp.net網(wǎng)站通過c#或者vb.net來實現(xiàn)。而c#則是ms .netframework的主要語言,可以用在網(wǎng)站,桌面應(yīng)用等方面。可以算是一種比較流行的編程語言。
VB.net
相對VB出現(xiàn)巨大變化的是語意,從運行于基于COM的deterministic,
reference-counted的引擎之上的編程環(huán)境,轉(zhuǎn)變?yōu)槿婷嫦驅(qū)ο蟮幕?NET
Framework的語言。.NET
Framework包括了CLR(使用通用垃圾收集機制和JIT編譯引擎的虛擬機)和大量的類庫。VB開發(fā)者進入VB.NET要面對新增的大量類庫的問題。
上述變化表明了許多在運行及維護相關(guān)優(yōu)化事宜下面的假定,一些VB6函數(shù)和庫不再存在而其它的仍然可用,但是比不上.NET語言中自帶的可替換的函數(shù)和庫來得高效。即使它們可被編譯,但大多從VB6轉(zhuǎn)換而來的應(yīng)用將需要一定程度上的重構(gòu)(refactoring),以全面利用新語言的優(yōu)點。在有關(guān)句法、應(yīng)用調(diào)試、部署和術(shù)語等方面的變化,有大量的文檔可以參考。
VB與VB.net嚴格上來說還是同一種語言,因為vb.net可以將VB6.0以前版本的源代碼進行轉(zhuǎn)換,區(qū)別他們的根本在于VB.net用于微軟全新的.net框架,如果你編譯了一個Vb.net的程序在沒有裝.net框架的環(huán)境下是運行不了的,VB6.0編譯生成的是win32位應(yīng)用程序,他可以適合于目前所有的操作系統(tǒng),但是他是微軟98年的產(chǎn)品,所以到目前已經(jīng)很老了,和VC++6.0是同一時代的產(chǎn)品,目前VB的最新版本是VB.net2008,語法和VB6.0有出入,但是不大,加入了很多的新元素,如繼承。。windows不可能不支持VB,因為VB是微軟自己開發(fā)的語言!
VC++是微軟最有力的開發(fā)環(huán)境,是人們對Microsoft visual C++ 公認的簡稱,除了VC++之外還有C++ builder 、Dev C++ 等眾多C++語言編譯器,說白了VC++只是一種編譯器,是支持C++語言的編譯器,而C++是大名鼎鼎的C語言的擴充,是在C語言的基礎(chǔ)上加入了類等眾多新元素,故而也被稱為“帶類的C”
VC#同樣是微軟的力作,他的主持開發(fā)者是.net框架和著名的delphi語言之父--Anders,VC#的語法和VB有些接近,但他們完全不同的語言,VC#和VC++沒有什么關(guān)聯(lián),如果非要說他們有關(guān)聯(lián)的話,那相信所有的面向?qū)ο笳Z言都有關(guān)聯(lián),因為他們都是面向?qū)ο螅瑥念愰_始繼承。。。
他們之間關(guān)系最為密切的就是VB與VB.net至于 VC++與 VC#,沒有什么關(guān)系
最后說一下,目前的殺毒軟件大部分用的是VC++編寫的,像卡巴,江民,也有用C++ builder編寫的像熊貓殺毒軟件,當然病毒也有例子,機器狗用的VC++編譯,熊貓燒香用的是Delphi,搞數(shù)據(jù)庫編程VB和delphi也都是不錯的選擇!如果你想學(xué)好編程語言最好刻苦的系統(tǒng)的學(xué)習(xí)一下C++語言程序設(shè)計,把他學(xué)會了,則java 學(xué)起來就會很容易,VB就自然更不用說了 ,推薦你用Visual C++ ,會VC++的人很多,但精通的沒有幾個,祝你成功!
分享名稱:關(guān)于vb.netcvar的信息
文章轉(zhuǎn)載:http://m.kartarina.com/article36/hscspg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、定制網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、小程序開發(fā)、網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)