zoukankan      html  css  js  c++  java
  • StringTokenizer && Java String.split() 简介

    StringTokenizer类:

    根据自定义字符为分界符进行拆分,并将结果进行封装提供对应方法进行遍历取值, StringTokenizer 方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释;该方法用途类似于split方法,只是对结果进行了封装;

    API文档对StringTokenizer进行了说明:StringTokenizer 是出于兼容性的原因而被保留的遗留类。(现在不怎么使用它了,建议使用 Stringsplit 方法)

         构造器:
         · public StringTokenizer(String str,String delim,boolean returnTokens);
         · public StringTokenizer(String str,String delim);
         · public StringTokenizer(String str);
         其中,str为需分析的字符串,delim为定界符,定界符里面的任何一个字符都是分隔符,如"+-*/   "表示碰到"+-*/   "中的任何一个都认为是到达了分隔符了。  
         常用的方法有:
         · public boolean hasMoreTokens(); //判断字符串中是含还有token
         · public String nextToken(); //StringTokenizer对象中的下一个token。
         · public String nextToken(String delim) //delim为新的定界符

           public boolean hasMoreElements ()

    StringTokenizer (Java Platform SE 6)

          public Object nextElement ()  //除返回结果类型外,其返回与 nextToken 方法相同的值

    在例中,使用StringTokenizer类将字符串“hello,java,delphi,asp,php”分解为三个单词。 


     【例】
         impoort java.util.*;
            public class StringTokenizer Demo
            {
                  public static void main(String[] args)
                  {
                      String str=" hello,java,delphi,asp,php";
                      StringTokenizer st=new StringTokenizer(str,",");
                      while(st.hasMoreTokens()) {
                          System.out.println(st.nextToken());
                      }
                  }
              }
        程序的运行结果为:
              hello
              java
             delphi
             asp

             php

    Java String.split()

    Java中的 split  函数是用于按指定字符(串)或正则去分割某个字符串,结果以字符串数组形式返回。对于分割的字符(串),通常是常见,普通的,没什么问题;

    但是对某些特殊字符,如果字符(串)正好是“正则”的一部分,则需要转义才能使用, 所以如果想用该字符本身, 这些字符需要进行转义才能表示它本身;例如: 

    想用 | 竖线去分割某字符,因 | 本身是正则表达式中的一部分,所以需要 去转义,因转义使用 \, 而这个 正好也是正则表达式的字符,所以还得用一个 , 所以需要两个 \。

    1、如果用“.”作为分隔的话,必须是如下写法,String.split("\."),这样才能正确的分隔开,不能用String.split(".");

    2、如果用“|”作为分隔的话,必须是如下写法,String.split("\|"),这样才能正确的分隔开,不能用String.split("|");

    “.”和“|”都是转义字符,必须得加"\";

    3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如,“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split("and|or");

    例子:    

    String[] aa = "aaa|bbb|ccc".split("|");

    //String[] aa = "aaa|bbb|ccc".split("\|"); 这样才能得到正确的结果


        for (int i = 0 ; i <aa.length ; i++ ) {

          System.out.println("--"+aa[i]);

        }

  • 相关阅读:
    关于django模型里面的__str__和__unicode__
    js基础之javascript的存在形式和js代码块在页面中的存放位置和 CSS 对比
    css样式之边框和内外边距
    css样式之背景图片
    python学习笔记(2)--python3新特性
    linux命令每日一练习-rmdir mv
    代码规范
    抽象类和接口的区别
    单例模式及其并发问题
    使用url下载网络图片以及流介绍
  • 原文地址:https://www.cnblogs.com/zhaoby451/p/7606975.html
Copyright © 2011-2022 走看看