正則表達式是一種用于匹配字符串模式的文本工具,它由一系列普通字符和特殊字符組成,可以非常靈活地描述和處理字符串。以下是正則表達式的一些基本組成部分及其功能:
- 普通字符:大多數字母和數字在正則表達式中表示它們自己。例如,'abc'將匹配字符串中的'abc'。
- 字符集合:使用方括號[]可以定義一個字符集合,用于匹配方括號內的任意一個字符。例如,'[abc]'將匹配任何一個a、b或c。
- 字符范圍:在方括號中使用連字符(-)可以指定一個字符范圍。例如,'[a-z]'將匹配任何小寫字母。
- 特殊字符:某些字符在正則表達式中有特殊的意義,例如點號(.)通常匹配除換行符外的任意單個字符,而星號(*)表示前面的字符可以出現零次或多次。
- 限定符:限定符用來指定前面的字符或組合的出現次數,如加號(+)、星號(*)、問號(?)等。
- 轉義字符:反斜杠()用來取消特殊字符的特殊意義,使其變為普通字符。
- 反向引用:通過編號捕獲組的內容,并在正則表達式的后面部分引用它們。
- 零寬斷言:這是一種不消耗字符位置的匹配方法,可以用來進行更復雜的匹配操作。
- 子表達式:圓括號()用來創建子表達式,這些子表達式可以在整個正則表達式中被引用或重復使用。
## 這里去掉*后.號后面少跟了一個符號,所以只算四個逗號的【,. ? ?, . ? ,. ? ,.】如左邊所示
# .代表任意符號【內容】
*可以代表0次或多次,所以上面色字沒有的也包括
如果用+號的話上面色字可以有一個或者多個,但0個的就不顯示了
如果你要,后面至少有一個字符,那就用,.+ 而不是,.*
即+了問號為盡可能少,不加?號為盡可能多
? ? ? ??
【】里面.不用轉義字符
????????
^表示非的意思
?