[英]How can I modify this regular expression to not allow white spaces?
我有以下正則表達式,用於指定允許用戶鍵入的字符:
@"^[A-Za-z0-9/!\$%\^&\*\(\)\-_\+\[\]\{\}\;\:\'\£\@\#\.\?]*$
我知道' \\s
'是空格字符類,但是如何將其添加到正則表達式中以使其排除呢? 我已經在Stack Overflow上進行了搜索-這些問題提供了排除空格的解決方案,但沒有提供如何在現有正則表達式中使用空格的解決方案。 如果我像其他字符一樣添加它,那將意味着“允許空白”?
編輯:不知道為什么這已被標記下來? 感謝大家的回答
在正則表達式中,方括號中的^
表示取反,因此加^\\s
表示“不是空白”。
首先,您不需要所有這些轉義符。 第二,正則表達式已經不允許使用空格。
@"^[A-Za-z0-9\[\]/!$%^&*()\-_+{};:'£@#.?]*$"
[]定義了一組允許的字符(后跟*表示該字符集中的字符可以為零或多次)。
^匹配開頭,$匹配結尾,因此/ s不在此處的事實意味着不允許使用空格。
在正則表達式中,如果您不寫“ \\ s”。 這意味着您的正則表達式不允許有空格。
例如:1)如果我不想允許任何用戶在文本框中輸入空格,那么正則表達式將寫為:
正則表達式字母=新的正則表達式(@“ ^ [az] * $”);
2)如果允許用戶在文本框中輸入任何空格,則正則表達式將寫為:
正則表達式字母=新的正則表達式(@“ ^ [az \\ s] * $”);
3)在正則表達式中,“ ^”表示開始,“ $”表示結束。
注意:^ \\ s表示否定“ \\ s”
正則表達式regfname =新的正則表達式(@“ ^ [^ \\ s] [a-zA-Z] * $”);
此代碼將不允許有任何空格和無空文本框!
希望這可以幫助您了解正則表達式中空格的概念。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.