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());
}
}
}