簡體   English   中英

正則表達式:數字后跟一個字符

[英]Regex : Digits followed by only one character

我正在嘗試創建一個正則表達式,它只允許在Textfield中的每個數字后面只有一個數字后跟一個字符

需要匹配的正則表達式 - \\ d * \\ + {1}

正則表達式,如果它不匹配 - [^ \\ d * \\ +){1}]將替換為“”(刪除其他所有)

final String regexFinalInteger = "\\d*\\+{1}";

    numberElements.textProperty().addListener((observable, oldValueE, newValueE) -> {
        if (!newValueE.matches(regexFinalInteger)) {
            numberElements.setText(newValueE.replaceAll("[^\\d*\\+){1}]", ""));
        }
    });

我期望輸出122 + 1 + 3,但實際輸出可以是1 ++ 2 +++ 4 + 123(多個+)

如果我理解正確,您只想用一個替換多個+

我相信這可以滿足您的需求:

String regex = "[+](?=[+])";

String text = "122+1+3";
assertEquals("122+1+3", text.replaceAll(regex, ""));

text = "1++2+++4+123";
assertEquals("1+2+4+123", text.replaceAll(regex, ""));

這是我的第一個Java程序,如果它冒犯了某人,我很抱歉。

暫無
暫無

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

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