簡體   English   中英

使用Java從字符串中提取任意5位數字

[英]Extract any 5 digit number from a String using Java

我正在嘗試使用REGEX從較大的String中提取5位數字。

這是我用來執行此操作的方法,但是它只是返回null。

public void setCWBudgetCode(String webPage){

    Pattern pattern = Pattern.compile("/\\b\\d{5}\b/g");
    Matcher matcher = pattern.matcher(webPage);
    if (matcher.find())
        this.cwBudgetCode = matcher.group();
}

這就是問題:

Pattern pattern = Pattern.compile("/\\b\\d{5}\\b/g");

而不是使用這種pattern

Pattern pattern = Pattern.compile("(\\b\\d{5}\\b)");

與Javascript不同,Java中沒有正則表達式定界符,當然也沒有/g

另請注意,我在正則表達式周圍使用了parenthesis ,以便可以使用matcher.group(1)

您需要更改正則表達式以將數字保存為組Pattern.compile("\\\\b(\\\\d{5})\\\\b");

這將使其與下面的group(1)代碼一起使用

暫無
暫無

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

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