Dav*_*ave 12
这不是一种常规语言,因此它不能被香草正则表达式捕获.无论如何,它可能是可能的,但是不使用正则表达式几乎肯定会更容易:
public static boolean moreDigitsThanNonDigits(String s) {
int diff = 0;
for(int i = 0; i < s.length(); ++i) {
if(Character.isDigit(s.charAt(i))) ++diff;
else --diff;
}
return diff > 0;
}
Run Code Online (Sandbox Code Playgroud)
wax*_*ing 10
您将无法编写执行此操作的正则表达式.但是你已经说过你正在使用Java,为什么不混合使用一些代码呢?
public boolean moreDigitsThanNonDigits(String input) {
String nonDigits = input.replace("[0-9]","");
return input.length() > (nonDigits.length * 2);
}
Run Code Online (Sandbox Code Playgroud)