java字符串中的数字
❶ 用java如何输出一个字符串中的所有数字
1.将字符串转化为字符数组,然后逐个比较
2.使用正则来匹配。
❷ Java如何从字符串中提取数字
使用正则表达式可以很方便地从文本中截取数字,下面是详细代码:
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
String phoneString = "哈哈,13888889999";
// 提取数字
// 1
Pattern pattern = Pattern.compile("[^0-9]");
Matcher matcher = pattern.matcher(phoneString);
String all = matcher.replaceAll("");
System.out.println("phone:" + all);
// 2
Pattern.compile("[^0-9]").matcher(phoneString).replaceAll("");
}
}
❸ java如何打印出字符串中的所有数字
数字的ascii码是48-57共10个。你可以用这个来判断是否是数字。伪代码如下:
Stringstr="123abcADDFG";
for(){
charcharOfStr=str.charAt(i);
if(char>=48&&char<=57){
system.out.println("String中的第"+i"个数字:"+charOfStr);
}
}
❹ JAVA怎样快速把字符串里面的数字取出来
char[] charArray=date.toCharArray();
//这是方法一 获得固定位置上的数字,因为我看你这个数字是在固定位置上的,所以论速度这个是最快的没有判断直接获取
String newDate=charArray[0]+charArray[1]+charArray[2]+charArray[3]+charArray[5]+charArray[6]+charArray[8]+charArray[9];
方法二:
对charArray进行遍历,如果是数字就加到新的字符串的尾巴上。这种需要判断很多次,速度没那么快。
方法三:你可以看看正则表达式的方法。
方法四:逆向思维,如果是"-"或者是" "," : "就过滤掉
我说的都是原理,他们说的都是方法。但是最快的肯定是我的第一个方法。别人的和我的方法二和四类似。
❺ java怎么将字符串中的数字取出来
import java.util.regex.Matcher;
import java.util.regex.Pattern;/**
* <pre>
*
* </pre>
* @since JDK 1.4
* @version 1.0
*
*/
public class Main {
public static void main(String[] args) {
String s = "阿里145山1的61歌17哦13我7呢819如果";
Pattern p = Pattern.compile("[0-9]");
Matcher m = p.matcher(s);
while (m.find()) {
System.out.println(m.group());
}
}
}
❻ java中怎么能把字符串中的数字取出来
实现你爹功能,用正则表达式处理选择字符的问题
import java.util.Scanner;
//java.util.Scanner的使用
public class h
{
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
System.out.println("请输入字符:");
while (input.hasNext()) {
String a = input.next();
//把字符串中的非回数字全部替答换为"" 打印
System.out.println(a.replaceAll("\\D",""));
}
input.close();
}
}
如果对您有帮助,请记得点赞为满意答案,谢谢!祝您生活愉快!
vaela
❼ java怎么去除字符串中的数字。。。
publicclassHello{
publicstaticvoidmain(String[]args){
Stringstr="123assume345contribute";
System.out.println(str.replaceAll("\d+",""));
}
}
❽ java中提取字符串中的数字
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
public class NumberSplit {
public StringBuffer getString(String str) {
StringBuffer strbuf = new StringBuffer("t");
boolean flag = true;
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
// 判断是否是数字
if (c >= '0'&& c <= '9') {
// 判断和字符串中的数字是否重复
for (int j = 1; j < strbuf.length(); j++) {
if (c == strbuf.charAt(j)) {
// 如果重复,标志位数值为false,并跳出循环;否则标志位设置为true.
flag = false;
break;
} else
flag = true;
}
// 只有在即是数字又不重复的情况下才将改字符拼接到字符串上.
if (flag) {
strbuf.append(c);
}
}
}
return strbuf;
}
public static void main(String args[]) throws Exception {
System.out.println("请输入一段字符串,并以回车结束");
BufferedReader buf = new BufferedReader(
new InputStreamReader(System.in));
String str = buf.readLine();
StringBuffer strbuf = new NumberSplit().getString(str);
// 将返回的StringBuffer转换为字符数组
char c[] = strbuf.deleteCharAt(0).toString().toCharArray();
// 对字符数组排序
Arrays.sort(c);
// 输出字符数组
for (int i = 0; i < strbuf.length(); i++) {
System.out.print(c[i]);
}
}
❾ java中怎么截取字符串中的数字
java中截取字符串中的数字方法有很多,例如用正则表达式。试一试下面的演示程序吧。
publicclassSplitTest
{
publicstaticvoidmain(String[]args)
{
Stringinput="jdiwo3495jis90.5jsie4dss56djiw9";
Stringregex="\d+(\.\d+)?";
Patternpattern=Pattern.compile(regex);
Matchermatcher=pattern.matcher(input);
while(matcher.find())
{
System.out.println(matcher.group());
}
}
}