1. 程式人生 > 其它 >演算法 A-Star(A星)尋路

演算法 A-Star(A星)尋路

正則表示式學習


  1. 限定符,限定符跟在字元的後面,表示前面一個字元的限制,常用的限定符有3個,分別是*+

表示出現0-1次

*匹配0次或多次

+匹配1次以上

同時,使用花括號表示出現範圍:

多個字元的重複,使用圓括號括起來

  1. 正則表示式的或,使用豎線|隔開

注意一下這個的括號如果去掉,意思就變了

  1. 字元類

方括號表示,限定匹配方括號中的內容

向上的尖括號^表示非

  1. 元字元

正則表示式中的大多數元字元以反斜槓開始,元字元是預定義好的

\d表示數字

\w表示單詞字元(英文、數字及下劃線)

\s表示空白符(包含Tab和換行符)

\D表示非數字字元

\W表示非單詞字元

\S

表示非空白字元

.表示除換行符之外的任意字元

^匹配行首$匹配行尾

貪婪匹配和懶惰匹配:預設匹配是貪婪的,但是想要懶惰匹配的話,可以使用


匹配IPV4的案例:


前置約束和後置約束:

首先說一下,這裡很容易弄混,總共有四個,分別是

?=:前置約束,意思是我要前面匹配上的東西,但是要加個約束,約束放在後面

?!:前置排除,意思是我要前面匹配上的東西,但是後面約束中的不要

?<=:後置約束,意思是我要後面匹配上的東西,但是前面要有個約束

?<!:後置排除,意思是我要後面匹配上的東西,但是前面約束中的不要

來看具體的:

前置約束,這裡要匹配The或者the,但是後面接空格+fat

前置排除,這裡要匹配The或者the,但是後面不能有空格+fat

後置約束:

後置排除: