Java入門——使用StringTokenizer類分析字串

來源:互聯網
上載者:User

有時我們需要分析字串並將字串分解成可被獨立使用的單詞,這些單詞叫做語言符號。例如,對於字串“We are students”,如果我們把空格作為該字串的分隔字元,那麼該字串有三個單詞,語言符號。而對於字串“We ,are,student”如果我們把逗號作為了該字串的分隔字元,那麼該字串有三個單詞,語言符號。

當我們分析一個字串並將字串分解成可被獨立使用的單詞時,可以使用java.util包中的StringTokenizer類,該類有兩個常用的構造方法。

·StringTokenizer (String s) 為字串s構造一個分析器,使用預設的分隔字元集合(即空格符),若干個空格被看做一個空格,分行符號,斷行符號符,Tab符,進紙符。

·StringTokenizer(String s,String delim)為字串s構造一個分析器。參數dilim中的字元被作為分隔字元。

例如:

       StringTokenizer fenxi=new StringTokenizer("we are student");

       StringTokenizer fenxi=new StringTokenizer("we,are,student",",;");

   我們把一個StringTokenizer對象稱作一個字串分析器。一個分析器可以使用nextToken()方法逐個擷取字串中的語言符號(單詞),每當調用nextToken()時,都將在字串中獲得下一個語言符號。通常用while迴圈來逐個擷取語言符號,為了控制迴圈,我們可以使用StringTokenizer類中的hasMoreTokens()方法,只要字串中還有語言符號,該方法就返回true,否則返回false。另外我們還可以調用countTokens()方法得到字串一共有多少個語言符號。

下面是一個應用程式,分析字串,分別輸出字串的單詞,並統計單詞個數。

例子7:

           import java.util.*;

           public class Example5_7

               {

                   public static void main(String args[])

                           {

                                  String s="I am Geng.X.y,she is my girlfriend";

                                  StringTokenizer fenxi=new StringTokenizer(s,","); //空格和逗號做分

                                  int number=fenxi.countTokens();

                                  while(fenxi.hasMoreTokens())

                                       {

                                            String str=fenxi.nextToken();

                                            System.out.println(str);

                                            System.out.println("還剩"+fenxi.countTokens()+"個單詞");

                                       }

                   System.out.println("s共有單詞"+number+"個");

                           }

               }

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.