[英]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.