2012-05-08 33 views
0

我想檢查一個Vb.net字符串是否至少包含3個非空白字符,其中至少有一個非數字字符。三個非數字字符

任何人都可以幫助創建正則表達式嗎?

AB C時有效

2c中一個有效

ABC有效

1無效

123無效

我試圖這一個

^[A-Z]{3}$ 

,但它不工作

+1

我建議你把它分解成兩個正則表達式並檢查兩者。 – Oded

回答

1

你可以用一個積極的前瞻,以確保至少有一個字符不是一個數字(在這個例子中AZ),則需要三個非白 - 空格字符(\S)由零個或多個空格字符分隔(\s)。

(?=.*[A-Z])\S\s*\S\s*\S 
+0

你需要在你的lookahead中加一個'。*',(?=。* [AZ])\ S \ s * \ S \ s * \ S',否則只有在第一個'\ S'無論如何都是'[AZ] +1 – stema

+0

@stema:對,你是對的。修復。 :) – Guffa

+0

@Guffa它會工作,如果字符串長度可以大於3,如果非數字不是第一個字符 – DotnetSparrow

相關問題