在這個執行緒的幫助下,我調整了一個正則運算式供我使用。 十進制數正則運算式,其中小數點后的數字是可選的
到目前為止,我有這個 /^-?[1-9] $|^,\d $|^0,\d $|^[1-9]\d*,\d*$
它適用于
- -12
- 0
- 1
它不適用于
- -1,
- -1,1
我想要的是:
- -1,1
一個善良的靈魂可以解釋我在這個正則運算式中缺少什么或做錯了嗎?非常感謝!我正在調整它:https ://regexr.com/6sjkh但已經 2 小時了,我仍然不知道我錯過了什么。我不知道語言是否重要,但我在視覺基礎。
uj5u.com熱心網友回復:
您在問題中參考的執行緒已經有一些很好的答案。但是,如果您不需要同時捕獲 并且不關心在逗號之前沒有前導零且沒有千位分隔符的數字,我會推薦以下內容:
/^-?\d (,\d )?/
- ^表示開頭,因此前面不允許有其他文本
- - ?允許一個負號(你需要用 \ 轉義它 - 可以是一個特殊字符
- \d 需要 1 個或多個數字
- 括號中的最后一部分涵蓋了小數部分,由于末尾的問號,整體上可能出現 0 次或 1 次
- ,是小數點分隔符(如果你想有點,你需要放她。,因為點是任何字符的特殊字符,如果你尋找一個真正的點也需要轉義)
- \d 又是逗號后的一位或多位數字
我希望這能有所幫助。除此之外,我還可以推薦使用在線正則運算式工具,例如https://regex101.com/
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/503741.html
標籤:VB.net
上一篇:沒有linqvb.net的組復制
下一篇:延遲直到await回傳True
