java截取字符串

04-05-24, 09:38
例如我有字符串CN=menglianjing,OU=ShanDong,O=ShanDong University.....
我只需要CN=menglianjing,请问怎么把它截取出来?谢谢了

iDay
04-05-24, 09:40
你指的是什么,从文件里读出来的吗?

menglianjing
04-05-24, 09:51
for instance

package intercept;
import java.io.*;
import java.net.*;
import javax.net.ssl.*;
import java.lang.*;
public class Intercept
{
public Intercept()
{
System.out.println("Intercept String");
}

private void getParms()
{
String str = "CN=mengliangjing,后面省略";
System.out.println(....);
}

public static void main(String args[])
{
new Intercept().getParms();
}
}

这是一个大概雏形,现在你可以看见一个String的字符串,而我只需要CN=menglianjing然后打印出来,请问怎么截取?谢谢了
:) :)

iDay
04-05-24, 09:57
String spStr[] = str.split(",");
System.out.println(spStr[0]);
据说这样可以

menglianjing
04-05-24, 10:07
谢谢!可以,但是不完美,for instance 如果我要截取俩 怎么办?就是这个意思
String str = "CN=menglianjing,qterwfgadsgfdagdsagfsdagfsad,CN=menglianjing"看见两个CN=了吗?如果我要两个都截取出来,怎么做?谢谢了

iDay
04-05-24, 10:17
String spStr[] = str.split(",");
for(int i = 0; i < spStr.length; i++)
if( spStr[i].indexOf("CN=") >= 0 )
System.out.println(spStr[i]);

这样行不?

menglianjing
04-05-24, 10:25
:)高手!

iDay
04-05-24, 10:35
碰巧遇到到过这种情况罢了,呵呵

macross
04-05-24, 10:50
String str = "asdasd_=123+123" ;
String split = "_+=";
StringTokenizer token = new StringTokenizer(str, split);
while (token.hasMoreTokens()) {
System.out.println(token.nextToken());
}

lijiangt
04-05-24, 18:57
java.lang.String和StringBuffer中提供了非常丰富的字符串操作方法,建议有空多看看.

waveDuke
04-05-29, 01:20
java.util.StringTokenizer

int countTokens()
Calculates the number of times that this tokenizer's nextToken method can be called before it generates an exception.

boolean hasMoreElements()
Returns the same value as the hasMoreTokens method.

boolean hasMoreTokens()
Tests if there are more tokens available from this tokenizer's string.

Object nextElement()
Returns the same value as the nextToken method, except that its declared return value is Object rather than String.

String nextToken()
Returns the next token from this string tokenizer.

String nextToken(String delim)
Returns the next token in this string tokenizer's string.

fangshun
04-05-31, 09:08
StringTokenizer和String都可以解决这样的字符分解问题,但是那位高手能讲讲它们的特点!让我的感觉是StringTokenizer更专一些!

晨想
04-06-01, 02:57
import java.util.regex.*;

public class StringCutting {
public static void main(String[] args) {
try {
String src = "CN=menglianjing,OU=ShanDong,O=ShanDong University";
java.util.regex.Pattern patt = Pattern.compile("(CN=//w*).*");
System.out.println(patt.pattern());
Matcher mat = patt.matcher(src);
System.out.println(mat.matches());
System.out.println(mat.group(1));
System.out.println(mat.groupCount());
} catch (RuntimeException e) {
// TODO Auto-generated catch block
System.out.println (e.getMessage());
}
}
}

晨想
04-06-01, 03:08
最初由 fangshun 发表
StringTokenizer和String都可以解决这样的字符分解问题,但是那位高手能讲讲它们的特点!让我的感觉是StringTokenizer更专一些!


String的split方法,把全部都分解开后,放入string[]中。
1。占用内存。String的本身的问题。
2。没有什么控制的方法,比如究竟分解出东西没?这个就不知道了。

StringTokenizer,就是专门解决这些麻烦的。所以当然StringTokernizer专业一点。:)。

fangshun
04-06-02, 11:44
非常感谢,但是为什么String本身会占用内存,有什么考证吗?

carlos
04-06-02, 21:06
最初由 fangshun 发表
非常感谢,但是为什么String本身会占用内存,有什么考证吗?
That's obvious, because it return an array.

LYOO
04-06-02, 23:41
1.4已经支持正则表达式了吧

charley
04-06-03, 03:21
最初由 LYOO 发表
1.4已经支持正则表达式了吧
不错。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值