簡體   English   中英

用於在java中檢查帶下划線的字符串名稱的正則表達式

[英]Regex expression to check for string name with underscore in java

我是java中的正則表達式的新手。 如何檢查文件名是否具有以下格式update_9_0_27 它是[0-9][\\\\_][0-9][\\\\_][0-100]嗎?

以下應該有效:

^[a-zA-Z]+_\d_\d_\d{1,2}$

^$是字符串錨點的開頭,因此您不會僅匹配字符串的一部分。 每個\\d將匹配一個數字,而最終\\d之后的{1,2}意味着“匹配一個和兩個數字(包括)”。

如果文件名的update部分始終是常量,那么您應該使用以下內容:

^update_\d_\d_\d{1,2}$

請注意,在Java字符串中創建此正則表達式時,您需要轉義每個反斜杠,因此該字符串將類似於"^update_\\\\d_\\\\d_\\\\d{1,2}$"

數字位置是否固定,即1-1-2?

^update\_\d\_\d\_\d\d$

在Java字符串中使用時,您需要轉義反斜杠

"^update\\_\\d\_\\d\\_\\d\\d$"

如果通過[0-9][\\\\_][0-9][\\\\_][0-100]您的意思是單位數,下划線,單位數,下划線,零到一百,以及這個序列可以出現在字符串中的任何地方

".*[0-9][_][0-9][_](100|[1-9][0-9]|[0-9]).*"

請注意,我現在使用[_]作為\\_的替代,以指定文字下划線。 最后一部分專門測試0-100。

暫無
暫無

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

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