簡體   English   中英

如何找到JAVA字符串中遇到的定界符

[英]How to find the delimiter encountered in a string in JAVA

我已經用Java編寫了簡單的程序,該程序可以處理給定的字符串。

輸入字符串具有一些非字母的定界符。 我已經使用String Tokenizer來讀取和操作字符串中的單個單詞。

現在,我需要使用相同的定界符集來重構此操作的字符串。 如果有人能建議我如何識別定界符,我將不勝感激。

換句話說,這就是輸入:

文本1分隔符1文本2分隔符2文本3分隔符3文本4分隔符4

這是我的代碼的作用:

NewText1 NewText2 NewText3 NewText4

我以這種方式利用字符串標記器來標識下一個標記:

StringTokenizer st = new StringTokenizer(str, ", 0123456789(*&^%$#@!-_)");

但是現在我想確定遇到的定界符,以便可以構建新的字符串。

這是我真正想要的:

NewText1定界符1 NewText2定界符2 NewText3定界符3 NewText4 Delmiter4

您可以按照以下步驟進行:

String dels = "-, 0123456789(*&^%$#@!_)";
String specs = "[" + dels + "]+";
String letts = "[^" + dels + "]+";
String text = "one, two - three! four";
String[] words = text.split( specs );
String[] delim = text.split( letts );

請注意,在連字符中,連字符必須位於前面。 如果添加[]^必須格外小心-檢查java.util.regex.Pattern中的javadoc。

組成原始字符串沒有特別的問題。

具有第三個參數的StringTokenizer的缺點在於,它將每個定界符作為長度為1的單獨標記返回。

暫無
暫無

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

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