首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

正則表達式錯誤:分組與量詞寫法導致匹配失敗

     編輯:程式設計疑難解答

原問題

正則 `^H(a-z){1,3}o\s sir$` 匹配失敗,返回 FALSE。

錯誤分析

  1. 小括號 `()` 是分組,非字符集。匹配字母範圍應用中括號 `[]`:`[a-z]`。
  2. 量詞 `{1,3}` 應緊跟字符集**`[a-z]{1,3}`**,而非分組。
  3. `\s` 轉義需雙反斜杠** 在字符串中:`\\s` 表示空白字符。

修正正則

^H[a-z]{1,3}o\\ssir$

匹配示例

  • `Hao sir` ✓
  • `Habc o sir` ✓ (中間有空格)
  • `Haoo sir` ✗ (超過 3 字母)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved