我需要提取在 a 中找到的第一个整数,java.lang.String
并且不确定是尝试使用substring
方法还是正则表达式方法:
// Want to extract the 510 into an int.
String extract = "PowerFactor510";
// Either:
int num = Integer.valueof(extract.substring(???));
// Or a regex solution, something like:
String regex = "\\d+";
Matcher matcher = new Matcher(regex);
int num = matcher.find(extract);
所以我问:
- 哪种类型的解决方案在这里更合适,为什么?和
- 如果子字符串方法更合适,我可以用什么来表示数字的开头?
- 否则,如果正则表达式是合适的解决方案,我应该使用什么正则表达式/模式/匹配器/方法来提取数字?
注意:字符串总是以单词开头,PowerFactor
后跟一个非负整数。提前致谢!