2015-01-09 72 views
0

我需要.NET程序的正則表達式來確保字符串不包含任何字母或數字。下劃線和其他特殊字符都可以。 一個字符串的例子是「.____」用於檢查非字母數字字符的正則表達式

我需要檢查字符串,並確保它沒有任何數字或字母。誰能幫忙?

回答

2

用途:

^[^\p{L}\p{Nd}]+$

\ p {L}爲從Unicode類別「信」
\ p {釹}匹配該Unicode類的字符一個字符匹配「十進制數字」

1

你可以嘗試下面的正則表達式,它允許不包含字母或數字的字符串。

^[^\dA-Za-z]*$ 

^聲稱我們是在開始。 $斷言我們在字符串的末尾。 [^..]否定字符類。 *重複上一個令牌零次或多次。如果您不想匹配空白行,請將上述正則表達式中的*更改爲+

^[^\dA-Za-z]+$ 

OR

^(?!.*[\dA-Za-z]).*$ 

(?!.*[\dA-Za-z])排除模式,它斷言字符串將不包含一個字母或數字。它僅匹配那些條件爲真的行。

OR

^[^\p{L}\p{N}]*$ 

\p{L}任何種類的任何語言的字母和\p{N}匹配任何種類的數字相匹配。通過將它放入一個否定字符類,如[^\p{L}\p{N}]*可以匹配任何字符,但不能匹配字母或數字零次或多次。

+0

你能否爲我分解一下?我正在嘗試熟悉正則表達式。另外我試着把第一個表達式輸入到一個測試器中,然後我得到一個「尾隨空白」的錯誤 – ElenaDBA

+0

把''''改成'+'就像'^ [^ \ dA-Za-z] + $' –

0

如果您正在尋找提高一個錯誤,如果一個字母數字字符被發現,它可能是簡單的做到以下幾點:

[A-Za-z0-9] 

你不需要在這種情況下,正則表達式的開始和結束錨只會尋找一個字母數字字符,並在找到第一個字符時返回true。

相關問題