簡體   English   中英

Java中的字符串標記化

[英]String Tokenizing in java

我需要使用定界符標記一個字符串。

StringTokenizer能夠使用給定的定界符來標記字符串。 但是,當字符串中有兩個連續的定界符時,則不會將其視為標記。

預先感謝您的幫助

問候,

StringTokenizer對象的構造函數的第二個參數只是一個包含所需的所有定界符的字符串。

StringTokenizer st = new StringTokenizer(str, "@!");

在這種情況下, @!都有兩個定界符!

考慮這個例子:

String s = "Hello, i am using Stack Overflow;";
System.out.println("s = " + s);
String delims = " ,;";
StringTokenizer tokens = new StringTokenizer(s, delims);
while(tokens.hasMoreTokens())
  System.out.println(tokens.nextToken());

在這里,您將獲得帶有3個定界符的類似輸出:

Hello
,

i

am

using

Stack

Overflow

;

調查String.split()

這應該做您想要的。

http://docs.oracle.com/javase/6/docs/api/java/lang/String.html

使用java.lang.String的split()方法,並將與您一個或多個分隔符條件匹配的正則表達式傳遞給它。

因為例如"a||b|||c||||d" ||||| "a||b|||c||||d"可以用split("\\\\|{2,}");進行標記split("\\\\|{2,}"); 與結果數組[a,b,c,d]

public StringTokenizer(String str,
                       String delim)

為指定的字符串構造一個字符串標記器。 delim argument中的字符是用於分隔標記的定界符。 分隔符本身不會被視為標記。
因此,您可以使用..

String.split(String delim);

暫無
暫無

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

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