我想要一個條件,只有如果一個字符串中包含更多的四位數字,並且如果字符串中少於四位數字是假的,我嘗試過正則表達式像/ \ d {4} /,需要幫助如何檢查一個字符串是否包含多個數字(java)?
回答
以下模式會匹配包含至少4個數字的字符串:
(.*?\d){4, }
不,它是一個正則表達式模式。如何將它集成到Java中不應該是問題 –
public static void main(String[] args) {
String toCheck1 = "assg3asgasgas123aassag3";
String toCheck2 = "aasdasfasfs";
System.out.println(String.format("more then 4 number in \"%s\" - %s", toCheck1, moreThen4NumbersInString(toCheck1)));
System.out.println(String.format("more then 4 number in \"%s\" - %s", toCheck2, moreThen4NumbersInString(toCheck2)));
}
private static boolean moreThen4NumbersInString(String string) {
int numberOfNumbers = 0;
for (int i = 0; i < string.length(); i++) {
if (Character.isDigit(string.charAt(i))) {
numberOfNumbers++;
if (numberOfNumbers > 4) {
return true;
}
}
}
return false;
}
輸出:
更然後4號在 「assg3asgasgas123aassag3」 - 真更然後4在 「aasdasfasfs」號 - 假
轉換的string
到char[]
。 for
- 通過數組中的所有元素進行循環,並計數int count
中的數字編號。就這麼簡單
「。*?」必須位於數字的前面 –
@RafaelAlbert,除了'\ d。*?'以外的任何一種方式似乎都更有效。 –
取決於模式是否必須匹配開頭或者不匹配,因此使用的方法。 –
在這裏,你走了樣:
package com.company.misc;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexSample {
public static void main(String[] args) {
String regex = "(.*?\\d){4,}";
//(.*?\d){4, } do not use this, compilation error
String input = "test2531";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
boolean isMatched = matcher.matches();
System.out.println(isMatched);
}
}
希望我已經給出了你的用例的例子。
- 1. Java,如何檢查一個字符串是否包含數字?
- 2. Java:檢查字符串是否包含多個字符
- 3. Javascript - 如何檢查一個字符串是否包含多個子字符串
- 4. 檢查字符串是否包含一個或多個字
- 5. 檢查一個字符串是否包含數字和字母
- 6. 如何檢查一個字符串是否包含一個子字符串 - mysql
- 7. 如何檢查一個字符串是否包含字典
- 8. 檢查一個字符串是否包含任何字符
- 9. Applescript:檢查一個字符串是否包含空字符串?
- 10. Ruby:檢查一個字符串是否包含多個值
- 11. Java - 查看一個字符串是否包含任何字符
- 12. 如何檢查一個TextView是否包含某個字符串
- 13. 檢查一個數組是否包含一個字符串
- 14. Ruby檢查一個字符串是否包含多個不同的字符串?
- 15. 如何檢查字符串是否包含某個字符?
- 16. 檢查一個List/ArrayList是否包含一個字符串的字符Java
- 17. 如何檢查一個字符串是否包含任何一些字符串
- 18. 檢查一個字符串是否包含數字
- 19. SML檢查一個字符串是否只包含數字
- 20. F#檢查一個字符串是否只包含數字
- 21. 檢查字符串是否包含一個數字範圍
- 22. 如何檢查url是否包含多個字符串。 Javascript/jquery
- 23. 如何檢查一個字符串是否包含來自Java中另一個字符串的字符?
- 24. 檢查一個字符串是否只包含特殊字符
- 25. 檢查一個字符串是否包含給定字符
- 26. 檢查一個字符串是否包含特定字符
- 27. 檢查一個字符串是否只包含某些字符
- 28. 檢查一個字符串是否不包含一些文字
- 29. 如何檢查一個字符串是否包含char?
- 30. 如何檢查一個字符串是否包含在ArrayList中?
@kruti您可能的重複根本不是重複的 –
「沒有運氣」不足以說明您遇到的問題。 – khelwood
可能重複的[正則表達式計數不包括空格的位數](http://stackoverflow.com/questions/23978695/regex-count-number-of-digits-excluding-space) – Rupsingh