簡體   English   中英

如何在 Reg ex 中驗證 number.number.number;number 這種格式

[英]How to validate number.number.number;number this format in Reg ex

我的字符串應該以這種格式包含 number.number.number;number ex:15.2.63;4 如何在 Reg ex 中驗證這種格式。 我已經以正常方式使用了包含、溢出等。但是代碼行數增加了。 我可以知道在 reg ex 中怎么做嗎?

你可以這樣做:

^\d+[.]\d+[.]\d+;\d+$

帶有現場演示

有很多方法可以做到,這里使用 PCRE:

laptop:~$ echo "12.34.56;7" | perl -ne 'print $_ if (/^\d+\.\d+\.\d+;\d+$/);'

12.34.56;7

laptop:~$ echo "12a.34b.56c;7" | perl -ne 'print $_ if (/\d+\.\d+\.\d+;\d+/);'

laptop:~$ echo "12.34.56;7" | perl -ne 'print $_ if (/^(\d+\.){2}\d+;\d+$/);'

12.34.56;7

如果您知道每個部分的確切長度,您也可以修復它。 例如\\d{2}。 將匹配 11。但不會匹配 123。

上面的答案將點分組到括號 ([.]) 中,這對於單個字符是無用的。 但是,如果您的分隔符可能會有所不同,您可以使用,例如 [.;-] 來允許 . ; 和 - 作為分隔符。

嘗試這個..

^[1-9][\.\d]*[1-9][\.\d]*[1-9][\.\d]*[1-9][\;\d]?$

希望這可以幫助...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM