2013-07-17 48 views
0

我從這個網站上的成員得到這個正則表達式,並決定玩它,直到我得到我想要的。有人可以向我解釋這個正則表達式的工作原理嗎? (總新手在這裏)

"(\\d+\\.\\d$)", "$10" 

它似乎工作。我的工作是將任何值如12.3轉換爲12.30或1.0到1.00,而12.33保持不變。

這是否適合它?

+0

這是因爲第二個'\ d'只能保存一個值,我相信 - 但我認爲這取決於您正在使用的編程語言。嘗試在'$'之前的第二個'\ d'之後添加'*'。此外,您可以嘗試使用類似[[LANG]交互式正則表達式]的搜索功能,並使用列出的其中一個網站來測試您的正則表達式。 (請注意,應將LANG替換爲相關語言,如'perl')。 –

回答

0

\ d將匹配單個數字

+是量詞相匹配1對多前述characters..So,\ d +將匹配1對多位數

可以將組中的捕獲值表示爲()然後可以參考它back.So當使用這個表達式(\d)(\d)它捕獲第一手指在group 1group 2第二位數字。你現在可以使用$1請參考這些捕獲的值,$2 ..

0

的一個或多個數字位,後跟一個句點,後跟數字和線

\ d單個數字位匹配的端部,以及+是指「一個或多個什麼之前後」。然後。逃脫了,所以它只是一個。 ,然後再單個數字\ d,並在行結束$。

請注意,在java中,您需要像\ d那樣「雙重轉義」。

相關問題