簡體   English   中英

在java中為分隔符拆分字符串

[英]Split string in java for delimiter

我的問題是我想用分隔符^在java中拆分字符串。 我使用的語法是:

readBuf.split("^");

但這並沒有拆分string.Infact這適用於所有其他分隔符,但不適用於^

split使用正則表達式(不幸的是,IMO)。 ^在正則表達式中有特殊含義,所以你需要轉義它:

String[] bits = readBuf.split("\\^");

(Java轉義需要第一個反斜杠。實際的字符串只是一個反斜杠和插入符號。)

或者,使用Guava及其Splitter類。

使用\\\\^ 因為^是一個特殊字符,表示行錨的開始。

String x = "a^b^c";
System.out.println(Arrays.toString(x.split("\\^"))); //prints [a,b,c]

或者你可以使用... StringTokenizer而不是拆分
StringTokenizer st=new StringTokenizer(Your string,"^");
while(st.hasMoreElements()){
System.out.println(st.nextToken());
}

你也可以用這個:

readBuf.split("\\u005E");

\\ u005E是“^”的十六進制Unicode字符,你需要添加一個“\\”來逃避它。

可以通過這種方式轉義所有字符。

暫無
暫無

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

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