String str = "请您对您的言行负责,遵守中华人民共和国有关法律、法规,尊重网上道德";
StringTokenizer stringTokenizer = new StringTokenizer(str,"法律");
int count = 0;
while (stringTokenizer.hasMoreTokens()) {
    System.out.println(stringTokenizer.nextToken());
    count ++;
}
System.out.println(String.valueOf(count));

解决方案 »

  1.   

    String str="请您对您的言行负责,遵守中华人民共和国有关法律、法规,尊重网上道德";
    int count=0;
    while(str.indexOf("法律")>=0){
      count++;
    }
    System.out.println(count);
      

  2.   

    我试了试但是报错:
    Generated servlet error:
        [javac] Since fork is true, ignoring compiler setting.
        [javac] Compiling 1 source file
        [javac] Since fork is true, ignoring compiler setting.
        [javac] D:\Tomcat 4\work\Standalone\localhost\test\online\source\test_jsp.java:53: cannot resolve symbol
        [javac] symbol  : class StringTokenizer 
        [javac] location: class org.apache.jsp.test_jsp
        [javac] StringTokenizer stringTokenizer = new StringTokenizer(str,"路篓??");
        [javac] ^
        [javac] D:\Tomcat 4\work\Standalone\localhost\test\online\source\test_jsp.java:53: cannot resolve symbol
        [javac] symbol  : class StringTokenizer 
        [javac] location: class org.apache.jsp.test_jsp
        [javac] StringTokenizer stringTokenizer = new StringTokenizer(str,"路篓??");
        [javac]                                       ^
        [javac] 2 errors
      

  3.   

    要导入包
    import java.lang.Object;
      

  4.   

    我这样写了之后还是报同样的错:
    <%@  page  contentType="text/html;charset=ISO8859_1"%>
    <%@ page language="java"%>
    <%@ page import="java.sql.*"%>
    <%@ page import="java.text.*"%>
    <%@ page import="java.io.*"%>
    <%@ page import="java.lang.*"%>
    <%@ page import="java.*"%>
    <%
    String str = "请您对您的言行负责,遵守中华人民共和国有关法律、法规,尊重网上道德";
    StringTokenizer stringTokenizer = new StringTokenizer(str,"法律");
    int count = 0;
    while (stringTokenizer.hasMoreTokens()) {
        System.out.println(stringTokenizer.nextToken());
        count ++;
    }
    out.println(String.valueOf(count));
    %>
      

  5.   

    不知道java是否支持 正则表达式
    javascript里用正则表达式很简单的就可以实现了。。
      

  6.   

    SORRY, 请 import java.util.*;BTW, 测试了一下, 此方法可能不行, 如果<%@ page contentType="text/html; charset=GB2312" %>结果为3
    如果<%@ page contentType="text/html; charset=ISO8859_1" %>结果为4
    不过这个问题可以用StringTokenizer(str,delim,false);来解决.又查了一下说明, StringTokenizer(String str, String delim);使用delim的每个字符作为分隔符.是不是可以用String的replaceAll()方法(jsdk1.4以上),将所以的"法律'换为原串中不存在的一个字符,再用StringTokenizer(String str, String delim, boolean returnDelims);?
      

  7.   

    String s = "请您对您的言行负责,遵守中华人民共和国有关法律、法规,尊重网上道德";
    int i = 0;
    int count = 0;
    s1 ="法律";
    while(s.startsWith("s1",s.indexOf("s1"))&&s!=null)
    {
        s=s.substring(s.indexOf("s1")+"s1".length());
        count++;
    }
    System.out.println(count);
    这个应该可以我在自己的机器上已经试过了。