簡體   English   中英

正則表達式 - 不允許大寫

[英]Regex - Don't allow uppercase

我目前正在前端 (Vuetify) 和后端 (Laravel) 上驗證用戶名,您將如何在此正則Regex中添加檢查以排除大寫字符:

^(?!.*\.\.)(?!.*\.$)[^\W][\w.]{0,29}$

而不是\wWord - 匹配任何單詞字符(字母數字和下划線))我試過這樣的東西,但它仍然允許大寫字符:

^(?!.*\.\.)(?!.*\.$)[^\W][a-z0-9_.]{0,29}$

這些字符串中的所需結果驗證:

  • 列傑傑亞蘭興
  • 瑞吉·傑亞蘭臣
  • _riegie.jeyaranchen
  • riegie._.jeyaranchen
  • riegie.___.wewsd

這些失敗了:

  • 里吉·傑亞蘭臣
  • .riegie
  • riegie..jeyaranchen
  • 里吉。
  • 里吉

您可以使用:

^(?!.*\.\.)(?!.*\.$)[a-z0-9_][a-z0-9_.]{1,28}$

這將滿足您的要求。 [^\W]允許在 29 個字符檢查之前使用任何字母數字字符或下划線。 這也是一個雙重否定,更容易寫, \w

您可以在這里看到它ZC1C425268E685D1AB5074C17A94F14Z, Z5E056C500A1C4B6A7110B507BADE5Z :////regex101.com/r/regex101.com/r/r/bh6tbd/2/201.11.1101/01/01/0156c56c56c56c56c56c56c56c5.4berdrebreybred.1hbred.4berd.1hbred.4bred.4bred.4bred.4bred.4bred.4bredrbred.1hbredreb

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM