gpt4 book ai didi

java - 检查字符串标记是否包含字符串字符和字符串数字值

转载 作者:行者123 更新时间:2023-12-01 22:47:31 25 4
gpt4 key购买 nike

1)我需要检查字符串是否包含字符串字符,正确的方法是什么?

2)是否有一些方法可以将 String 直接转换为数字,然后比较这两个数字? Like String = "House":1234 等于 "House":1234 但不等于 "house":123预览:

String token ="123"; False
String token = "ā123"; or other characters True utc.

if(isChars(token)){
Long value = toLong(token);
}

谢谢!

//编辑 公共(public) BigDecimal eval() {

    Stack<BigDecimal> stack = new Stack<BigDecimal>();

for (String token : getRPN()) {
if (operators.containsKey(token)) {
BigDecimal v1 = stack.pop();
BigDecimal v2 = stack.pop();
stack.push(operators.get(token).eval(v2, v1));
} else if (variables.containsKey(token)) {
stack.push(variables.get(token).round(mc));
} else if (functions.containsKey(token.toUpperCase())) {
Function f = functions.get(token.toUpperCase());
ArrayList<BigDecimal> p = new ArrayList<BigDecimal>(f.getNumParams());
for (int i = 0; i < f.numParams; i++) {
p.add(0, stack.pop());
}
BigDecimal fResult = f.eval(p);
stack.push(fResult);
} else if (isDate(token)) {
Long date = null;
try {
date = SU.sdf.parse(token).getTime();
} catch (ParseException e) {/* IGNORE! */
}
// mylog.pl("LONG DATE : "+new BigDecimal(date, mc));
stack.push(new BigDecimal(date, mc));
}//TODO HERE
else if (isChar(token)){
Long cha = toLong(token);
stack.push(new BigDecimal(cha, mc));
//TODO ENDS HERE
}
else {
// mylog.pl("Token : "+ token);
stack.push(new BigDecimal(token, mc));
}
}
return stack.pop().stripTrailingZeros();
}

最佳答案

确定字符串是否包含任何字符的另一种方法是 apache-commons-lang 中的很好的类 StringUtils图书馆。

它包含几种分析字符串内容的方法。看来,在您的情况下,您可以使用 StringUtils.isAlphanumeric(CharSequence cs) 或对 StringUtils.isNumeric(CharSequence cs) 的结果求反。

你问题的第二部分怎么样,所以我认为这里没有必要从字符串中提取数字。您可以使用标准 String.equals() 方法比较字符串 "House":1234"house":123

关于java - 检查字符串标记是否包含字符串字符和字符串数字值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25117350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com