簡體   English   中英

如何從 Java 中的字符串中分離出特定的單詞?

[英]How to isolate specific words from a string in Java?

我查看了其他類似的帖子,我看到的都是帶空格的字符串。 拆分不包含任何空格的字符串怎么樣? 我知道如何分隔數字,但我不確定如何拆分特定的單詞,如 Delta、Sigma、Gamma 和 Alpha。

// the one below is the string to be separated
//11020#Delta-99998#Sigma-45201#Gamma-69420#Gamma-90967#Alpha-

int[] numbers = new int[numberOnly.length()];
for(int i =0; i<numberOnly.length();i++) {
    numbers[i] = numberOnly.charAt(i)-'0';
            }
            

使用或運算符

class Regx{
    public static void main(String ...$){
        String s = "11020#Delta-99998#Sigma-45201#Gamma-69420#Gamma-90967#Alpha-";
        var out = System.out;
        String arr[] = s.split("Delta|Sigma|Gamma|Alpha");
        for(var a : arr)
            out.println(a);
    }
}

Output:

$ java Regx 
11020#
-99998#
-45201#
-69420#
-90967#
-

如果你想分開#-以及:

import java.util.stream.Stream;
import java.util.stream.Collectors;
class Regx{
    public static void main(String ...$){
        String s = "11020#Delta-99998#Sigma-45201#Gamma-69420#Gamma-90967#Alpha-";
        var out = System.out;
        var arr = Stream.of(s.split("Delta|Sigma|Gamma|Alpha|#|-")).filter(str->str.length() !=0).collect(Collectors.toList());
        for(var a : arr)
            out.println(a);
    }
}

Output:

$ javac Regx.java && java Regx
11020
99998
45201
69420
90967

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM