小數點後保留2位小數的正規表示式

2022-01-17 08:10:27 字數 2710 閱讀 7897

整數和小數,保留兩位小數的正規表示式:

具體什麼意思呢 

^(([1-9]\\d*)|([0]))(\\.(\\d))?$

1、首先從寫法上可以看出,使用了顯式定義正規表示式的語法,因為其中存在對字串"\"(反斜槓)的轉義

2、正規表示式的定義共有2種方式:顯示定義隱式定義

1 /*\d是正規表示式中的元字元,用於匹配數字,相當於[0-9],所以[0-9]也可以寫成\d*/

2 var myregex = new regexp("[0-9]"); //顯式定義

3 var myregex = /[0-9]/; //隱式定義

3、何謂定位符?即限定某些字元出現的位置。

說明:^表示必須以什麼字元開頭;$表示必須以什麼字元結尾。

4、何謂限定符?即限定某個字元或某類字元出現的次數。

說明:* 表示重複0次或更多次(任意次數);

?表示重複0次或1次(最多1次);

表示重複n次;

表示重複n-m次;

5、何謂分組?分組又稱為子表示式,即把乙個正規表示式的全部或部分分成乙個或多個組。

語法:分組使用的字元為「(」和「)」,即左括號和右括號。每乙個子表示式都可以當做乙個整體來處理。

1 //第一步:先分組,不管定位符和限定符。總共可分為兩大組。

2 (([1-9]\d*)|([0]))//第一大組:整數部分

3 (\.(\d))//第二大組:小數部分

1 //第二步:繼續分組,將第一大組(整數部分)繼續拆分,可分為3部分。

2 ([1-9]\d*)//第一部分

3 | //第二部分

4 ([0])//第三部分

1、[...]是正規表示式中的元字元它會匹配方括號中的所有字元。

2、|是正規表示式中的選擇符。簡單來說就是:用於二選一即選擇2個選項之中的任意乙個,選他或選她。

3、整數部分的兩種情況:首位是0和首位不是0。即0.1213.145.21

4、第一部分中的內容,即第一種情況,首位不為0:([1-9]\d*)

可以看出,第一部分由兩個模組組成,即[1-9]和\d*。

(1)[1-9]表示1-9之間的數字只出現一次,即保證了該數的首位不是0,總之是大於0的數。

(2)\d*表示0-9之間的數字可以出現任意次,即0次或更多次。出現0次說明是一位整數。出現更多次就是多位整數。

5、第三部分中的內容,即第二種情況,首位為0([0])【乙個字元沒必要使用[元字元,直接寫0就行,即(0)

表示數字0只能出現一次,即首位只能是0,而且只能有乙個0

第一大組匹配了整數部分的情況,大於0的數還是小於1的數

1 (\.(\d))//第二大組:小數部分

2 //第三步:繼續分組,將第二大組(小數部分)繼續拆分,可分為3部分。

3 \. //第一部分

4 (\d) //第二部分

5 //第三部分

1、.(點)是正規表示式中的元字元它會匹配除了換行符以外的任意字元

2、由於.(點)是元字元,所以,如果想要匹配字面意義上的點時(此處需要匹配小數點),需要使用轉義字元\(反斜槓)將它進行轉義,即\.

3、如果要匹配小數點後保留2位小數,則只需要改一下限定符即可。\.\d

^(([1-9]\d*)|(0))(\.\d)?$就表示了小數點後可以保留0位、1位、或2位小數。

要求小數點後只能保留2位小數,則修改表示小數點後面數字的重複次數(即位數)的限定符{},直接將改為,

然後去掉限定符?即可。去掉了 ? 就代表該數不可能是整數,一定是小數。

最終的正規表示式:^(([1-9]\d*)|(0))(\.\d)$

C 小數點後保留兩位小數

c 小數點後保留兩位小數,四捨五入的函式及使用方法 1 math.round 45.367,2 returns 45.37 2 math.round 45.365,2 returns 45.36c 中的round 不是我們中國人理解的四捨五入,是老外的四捨五入,是符合ieee標準的四捨五入,具體是四...

C 小數點保留倆位小數

今天在做一些資料運算的時候,發現有一些資料是小數點後面無數個,看著我都蒙。我想你們也遇到過吧,不多說,直接上 1 math.round 0.333333,2 四捨五入的國際標準2 double dbdata 0.335333 string str1 string.format dbdata 預設為保...

小數點後k位

立華奏在學習初中數學的時候遇到了這樣一道大水題 設箱子內有 n 個球,其中給 m 個球打上標記,設一次摸球摸到每乙個球的概率均等,求一次摸球摸到打標記的球的概率 但是她改了一下詢問方式 設最終的答案為 p 請輸出 p 小數點後 k1 到 k2 位的所有數字 若不足則用 0 補齊 第一行乙個整數 t,...