3 回答

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個贊
只需將小數(shù)點(diǎn)和E-then-指數(shù)部分都設(shè)置為可選:
[1-9][0-9]*\.?[0-9]*([Ee][+-]?[0-9]+)?
我不明白為什么您也不想讓領(lǐng)導(dǎo)[+-]?也捕獲可能的信號,但是,無論如何!-)
編輯:實(shí)際上可能沒有小數(shù)點(diǎn)剩余的數(shù)字(在這種情況下,我想必須有小數(shù)點(diǎn)和其后的1+數(shù)字?。?,因此顯然需要豎線(替代):
(([1-9][0-9]*\.?[0-9]*)|(\.[0-9]+))([Ee][+-]?[0-9]+)?

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個贊
這是我上交的。
(([1-9]+\.[0-9]*)|([1-9]*\.[0-9]+)|([1-9]+))([eE][-+]?[0-9]+)?
為了便于討論,我將這些部分標(biāo)記為
( ([1-9]+ \. [0-9]* ) | ( [1-9]* \. [0-9]+ ) | ([1-9]+)) ( [eE] [-+]? [0-9]+ )?
-------------------------------------------------------- ----------------------
A B
A:將所有內(nèi)容匹配到“ e / E”
B:匹配科學(xué)計數(shù)法
分解A我們得到三個部分
( ([1-9]+ \. [0-9]* ) | ( [1-9]* \. [0-9]+ ) | ([1-9]+) )
----------1---------- ---------2---------- ---3----
第1部分:允許小數(shù)點(diǎn)后的1-9,十進(jìn)制,0個或多個數(shù)字(目標(biāo)1)
第2部分:允許小數(shù)點(diǎn)后的1-9,十進(jìn)制,0個或多個數(shù)字(目標(biāo)1)2)
第3部分:允許1-9中的1個或多個數(shù)字,不帶小數(shù)(請參閱目標(biāo)列表中的#4)
分解B我們得到4個基本部分
( [eE] [-+]? [0-9]+ )?
..--1- --2-- --3--- -4- ..
第1部分:要求科學(xué)表示法使用大寫或小寫的“ e”(例如目標(biāo)8和9);
第2部分:允許對指數(shù)使用可選的正號或負(fù)號(例如目標(biāo)4、5和6)。
第3部分:允許1或指數(shù)的更多數(shù)字(目標(biāo)8)
第4部分:允許科學(xué)記號作為一個組是可選的(目標(biāo)3)
- 3 回答
- 0 關(guān)注
- 879 瀏覽
添加回答
舉報