传奇脱机从字符串取整数_英文回文串和稳定和谐数

新闻页面——新开传奇网站——最新传奇私服——传奇私服——传奇新版本——网站地图

时间:2021-04-27 03:06来源:300ren网络整理 作者: 300ren 点击:

只需为您提供一个包含数字的字符串,例如:

String s =“ eert343dfg56756dtry66fggg89dfgf”;

那么我们如何从中提取数字呢?大致有以下方法,正则表达式传奇脱机从字符串取整数,集合类和String类提供的方法。

1 String类提供的方法:

package 测试练习;
import Java.util.*;
public class get_StringNum {
/**
 *2016.10.25
 */
public static void main(String[] args) {
String str = "love23next234csdn3423javaeye";
str=str.trim();
String str2="";
if(str != null && !"".equals(str)){
for(int i=0;i=48 && str.charAt(i)<=57){
str2+=str.charAt(i);
}
}
}
System.out.println(str2);
}
}
output:
232343423

此方法有一个明显的缺点。它只能一起提取所有数字,而不能分别提取。当然,它可以改进传奇脱机从字符串取整数,有兴趣的朋友可以尝试一下。

2个正则表达式

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {
/**
 *2016.10.25
 */
public static void main(String[] args) {
String a="love23next234csdn3423javaeye";
String regEx="[^0-9]";  
Pattern p = Pattern.compile(regEx);  
Matcher m = p.matcher(a);  
System.out.println( m.replaceAll("").trim());
}
}
output:
232343423

Pattern和Matcher是java.util.regex包中的两个类。对于特定用法,您可以检查api。也不可能单独提取数字。

3个Collection类库

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {
/**
 *2016.10.25
 */
public static void main(String[] args) {
  String a="love23next234csdn3423javaeye";
List digitList = new ArrayList();
Pattern p = Pattern.compile("[^0-9]");
Matcher m = p.matcher(a);
String result = m.replaceAll("");
for (int i = 0; i < result.length(); i++) {
digitList.add(result.substring(i, i+1));
}
System.out.println(digitList);
}
}
output:
[2, 3, 2, 3, 4, 3, 4, 2, 3]

相同的想法:

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {
/**
 *2016.10.25
 */
public static void main(String[] args) {
        String a="love23next234csdn3423javaeye";
    List ss = new ArrayList();
    for(String sss:s.replaceAll("[^0-9]", ",").split(",")){
      if (sss.length()>0)
        ss.add(sss);
    }
    System.out.print(ss);
}
}
output:
[2, 3, 2, 3, 4, 3, 4, 2, 3]

很显然,我们可以使用正则表达式分别提取数字。

通过查阅文档也可以找到答案,如下所示:

/**
 * 从字符串文本中获得数字 
*@param
 text 
*@return
 
*/
 
publicstatic
 List
 getDigit(String text) { 
List
 digitList =new
 ArrayList();
 
Pattern p=
 Pattern.compile("(\\d+)");
 
Matcher m=
 p.matcher(text); 
while
 (m.find()) { 
String find=
 m.group(1).toString(); 
digitList.add(Long.valueOf(find)); 
}return
 digitList; 
}

与正则表达式匹配的两种判断方法如下;

// 判断一个字符串是否都为数字 
public boolean isDigit(String strNum) { 
  return strNum.matches("[0-9]{1,}"); 
} 
 
// 判断一个字符串是否都为数字 
public boolean isDigit(String strNum) { 
  Pattern pattern = Pattern.compile("[0-9]{1,}"); 
  Matcher matcher = pattern.matcher((CharSequence) strNum); 
  return matcher.matches(); 
} 
 
  //截取数字 
  public String getNumbers(String content) { 
    Pattern pattern = Pattern.compile("\\d+"); 
    Matcher matcher = pattern.matcher(content); 
    while (matcher.find()) { 
      return matcher.group(0); 
    } 
    return ""; 
  } 
 
// 截取非数字 
public String splitNotNumber(String content) { 
  Pattern pattern = Pattern.compile("\\D+"); 
  Matcher matcher = pattern.matcher(content); 
  while (matcher.find()) { 
    return matcher.group(0); 
  } 
  return ""; 
} 

以上是Java从编辑器带来的字符串中提取数字的简单示例的全部内容。希望您能对脚本库有很大的支持?

(责任编辑:admin)
轻变传奇

★★★★★

〞〞〞★★〞〞〞 〞〞〞★★〝〝〝 今日10:00 〞〞〞〞 ★★★★★★★★★★★★★★★★★★- ★★★★★★ ★★★★★ ★★★★★★★
〞〞〞★★〞〞〞 〞〞〞★★〝〝〝 今日10:00 〞〞〞〞 ★★★★★★★★★★★★★★★★★★- ★★★★ ★★★★★ ★★★★★★★