Java - Find and get a substring form a string


Diễn đàn chia sẻ kiến thức, kinh nghiệm về IT và cuộc sống!
 
Trang ChínhGalleryTìm kiếmLatest imagesĐăng kýĐăng Nhập
Top posters
Sakura (1124)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
hotboy (705)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
Già Làng (373)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
con_ca_nho90 (289)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
that_true (154)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
theanhkkt (143)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
phamay (137)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
lovelonelyman (134)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
o0ovioletstaro0o (128)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
stevenhung (122)
Java - Find and get a substring form a string Vote_lcapJava - Find and get a substring form a string Voting_barJava - Find and get a substring form a string Vote_rcap 
Âm - Dương lịch
Clock
Logo
11TH02 Pro!
Liên kết
Tin tức 60s
Tin công nghệ
Thời sự 24h
Game Moblie

Share
 

 Java - Find and get a substring form a string

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
Sakura

Java - Find and get a substring form a string Stars7
Sakura

Thú CƯng : Java - Find and get a substring form a string I-hate-Cats-icon
Nam Scorpio

Số bài viết : 1124
Điểm : 1688
Được cảm ơn : 35
Ngày sinh : 03/11/1990
Tham gia ngày : 16/03/2010
Tuổi : 33
Đến từ : Bình Dương
Ngề nghiệp : IT Student

Java - Find and get a substring form a string Empty
Bài gửiTiêu đề: Java - Find and get a substring form a string   Java - Find and get a substring form a string I_icon_minitime29/6/2011, 16:28

Đang đọc mấy cái code LTUDM vớ vẩn, thấy có cái StringTokenizer hôm bữa hem nghe thầy nói rõ, nên lên mạng tìm 1 ví dụ đơn giản để cùng xem nó là thứ gì. Kiến thức hạn hẹp, Ai bik rồi thì đừng chém nhá!

Bài viết này hướng đến việc làm một thao tác xử lý chuỗi là tìm kiếm và lấy ra một chuỗi con từ một chuỗi gốc theo một đặc điểm nào đó. Chuỗi gốc này phải có dạng tương tự như: param=value,....

Trong tình huống trên, tôi muốn lấy chuỗi "value", thì làm thế nào?
Trong Java, có một lớp có tên là StringTokenizer, cái từ token này chắc những ai đã từng học qua môn trình biên dịch thì không có lạ gì. StringTokenizer coi chuỗi mà ta truyền cho nó là một dãy gồm nhiều token và delimiter nằm xen kẽ nhau. Nó có 3 Constructor, còn cụ thể thì các bạn xem thêm trong "JavaTM 2 Platform" tại website: [You must be registered and logged in to see this link.]
Và đây là code cho ví dụ trên (nếu không phù hợp với bạn thì bạn có thể tùy biến nó lại):

Code:
public String getText(String str) {
  StringTokenizer strToken = new StringTokenizer(str, "=,");
  while (strToken.hasMoreTokens()) {
  if (strToken.nextToken().equals("text"))
      return strToken.nextToken();
  }
  return null;
 }

Đây là cách mà tôi thấy nhanh và gọn nhất, nhưng đương nhiên đó là chỉ là một cách và có thể còn nhiều cách hay hơn nữa.
Mong các bạn có thể áp dụng nó cho code của bạn!
***ồn: Valmzetvn
Về Đầu Trang Go down
hotboy

Java - Find and get a substring form a string Stars7
hotboy

Thú CƯng : Java - Find and get a substring form a string Hippopotamus-icon
Nam Aries

Số bài viết : 705
Điểm : 1043
Được cảm ơn : 9
Ngày sinh : 21/03/1990
Tham gia ngày : 13/05/2010
Tuổi : 34
Đến từ : BDU

Java - Find and get a substring form a string Empty
Bài gửiTiêu đề: Re: Java - Find and get a substring form a string   Java - Find and get a substring form a string I_icon_minitime29/6/2011, 19:26

cho cái ví dụ mà không giới thiệu cũng chả giải thích gì hết

cũng như cái này là gì StringTokenizer(str, "=,");

kết quả ra là cái gì

mục đích của cái ví dụ này là gì
Về Đầu Trang Go down
Sakura

Java - Find and get a substring form a string Stars7
Sakura

Thú CƯng : Java - Find and get a substring form a string I-hate-Cats-icon
Nam Scorpio

Số bài viết : 1124
Điểm : 1688
Được cảm ơn : 35
Ngày sinh : 03/11/1990
Tham gia ngày : 16/03/2010
Tuổi : 33
Đến từ : Bình Dương
Ngề nghiệp : IT Student

Java - Find and get a substring form a string Empty
Bài gửiTiêu đề: Re: Java - Find and get a substring form a string   Java - Find and get a substring form a string I_icon_minitime29/6/2011, 21:36

hotboy đã viết:
cho cái ví dụ mà không giới thiệu cũng chả giải thích gì hết

cũng như cái này là gì StringTokenizer(str, "=,");

kết quả ra là cái gì

mục đích của cái ví dụ này là gì

Ví dụ ở trên đã cho ra kết quả rồi, còn không thì mọi người có thể xem tại đây, cụ thể:
Code:
//Ham xu ly
    public static String XuLy(String sFromClient)
    {
       System.out.println ("Da nhan tu Client: " + sFromClient);
       //Quy uoc nhap vao: * 3 4 5 6
       StringTokenizer k = new StringTokenizer(sFromClient);
       String dau = k.nextToken();
       int a = Integer.parseInt(k.nextToken());
       int b = Integer.parseInt(k.nextToken());
       int c = Integer.parseInt(k.nextToken());
       int d = Integer.parseInt(k.nextToken());
       PhanSo A = new PhanSo(a, b);
       PhanSo B = new PhanSo(c, d);
       PhanSo C = new PhanSo();
      
       if(dau.equals((Object)String.valueOf("+")))
          C = A.Cong(B);
       else if(dau.equals((Object)String.valueOf("-")))
          C = A.Tru(B);
       else if(dau.equals((Object)String.valueOf("*")))
          C = A.Nhan(B);
       else if(dau.equals((Object)String.valueOf("/")))
          C = A.Chia(B);
       C.ToiGian();
          
       return C.toString();
    }
Nói nôm na, nó là 1 hàm tách chuỗi dựa vào các delimiters. Mặc định thì các delimiters của nó là các khoảng trắng ( whitespace) như trên ví dụ trên.
Trích dẫn 1 đoạn nho nhỏ lý thuyết.
Trích dẫn :
The processing of text often consists of parsing a formatted input string. Parsing is the division of text into a set of discrete parts, or tokens, which in a certain sequence can convey a semantic meaning. The StringTokenizer class provides the first step in this parsing process, often called the lexer (lexical analyzer) or scanner. StringTokenizer implements the Enumeration interface. Therefore, given an input string, you can enumerate the individual tokens contained in it using StringTokenizer.
To use StringTokenizer, you specify an input string and a string that contains delimiters. Delimiters are characters that separate tokens. Each character in the delimiters string is considered a valid delimiter—for example, ",;:" sets the delimiters to a comma, semicolon, and colon. The default set of delimiters consists of the whitespace characters: space, tab, newline, and carriage return.

The StringTokenizer constructors are shown here:

Code:
StringTokenizer(String str)
StringTokenizer(String str, String delimiters)
StringTokenizer(String str, String delimiters, boolean delimAsToken)

In all versions, str is the string that will be tokenized. In the first version, the default delimiters are used. In the second and third versions, delimiters is a string that specifies the delimiters. In the third version, if delimAsToken is true, then the delimiters are also returned as tokens when the string is parsed. Otherwise, the delimiters are not returned.

Delimiters are not returned as tokens by the first two forms. Once you have created a StringTokenizer object, the nextToken( ) method is used to extract consecutive tokens. The hasMoreTokens( ) method returns true while there are more tokens to be extracted. Since StringTokenizer implements Enumeration, the hasMoreElements( ) and nextElement( ) methods are also implemented, and they act the same as hasMoreTokens( ) and nextToken( ), respectively.

Here is an example that creates a StringTokenizer to parse "key=value" pairs. Consecutive sets of "key=value" pairs are separated by a semicolon.

Code:
// Demonstrate StringTokenizer.
import java.util.StringTokenizer;
class STDemo {
static String in = "title=Java-Samples;" +
"author=Emiley J;" +
"publisher=java-samples.com;" +
"copyright=2007;";
public static void main(String args[]) {
StringTokenizer st = new StringTokenizer(in, "=;");
while(st.hasMoreTokens()) {
String key = st.nextToken();
String val = st.nextToken();
System.out.println(key + "\t" + val);
}
}
}
The output from this program is shown here:

title Java-samples
author Emiley J
publisher java-samples.com
copyright 2007
Về Đầu Trang Go down
hotboy

Java - Find and get a substring form a string Stars7
hotboy

Thú CƯng : Java - Find and get a substring form a string Hippopotamus-icon
Nam Aries

Số bài viết : 705
Điểm : 1043
Được cảm ơn : 9
Ngày sinh : 21/03/1990
Tham gia ngày : 13/05/2010
Tuổi : 34
Đến từ : BDU

Java - Find and get a substring form a string Empty
Bài gửiTiêu đề: Re: Java - Find and get a substring form a string   Java - Find and get a substring form a string I_icon_minitime30/6/2011, 12:38

ghê quá trích dẫn toàn ến lệch nhìn mà choáng, dù sao cũng thank What a Face
Về Đầu Trang Go down
Sponsored content




Java - Find and get a substring form a string Empty
Bài gửiTiêu đề: Re: Java - Find and get a substring form a string   Java - Find and get a substring form a string I_icon_minitime

Về Đầu Trang Go down
 

Java - Find and get a substring form a string

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

 Similar topics

-
» Convert String to byte array
» Convert byte[ ] array to String
» Bài tập java
» Đề thi mẫu Java! Các bạn chú ý!
» Bài tập java ngày mai đây

Permissions in this forum:Bạn không có quyền trả lời bài viết
IT World! :: HỌC TẬP :: HỌC KỲ V :: Lập Trình Java-