import java.util.regex.*;public class RegexTest {
public RegexTest() {
}
public static void main(String[] args) {
String res = "C='TW', O='HiTRUST Banking', OU='HiTRUST', OU='0040000-BOT', OU='FXML', CN='9695839500'";
String reg = "C='(.*)', O='(.*)', OU='(.*)', OU='(.*)', OU='(.*)', CN='(.*)'";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(res);
String strs[] = new String[m.groupCount()];
if (m.matches()) {
for (int i = 1; i <= m.groupCount(); i++) {
System.out.println(m.group(i));
strs[i - 1] = m.group(i);
}
}
}
}
public RegexTest() {
}
public static void main(String[] args) {
String res = "C='TW', O='HiTRUST Banking', OU='HiTRUST', OU='0040000-BOT', OU='FXML', CN='9695839500'";
String reg = "C='(.*)', O='(.*)', OU='(.*)', OU='(.*)', OU='(.*)', CN='(.*)'";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(res);
String strs[] = new String[m.groupCount()];
if (m.matches()) {
for (int i = 1; i <= m.groupCount(); i++) {
System.out.println(m.group(i));
strs[i - 1] = m.group(i);
}
}
}
}
解决方案 »
- 请教各位已经工作了的老兄们,你们刚工作的时候都掌握了什么技能?
- Eclipse中的相对路径
- 请问如何判断按钮被按下和其需执行的操作
- 有那些Jsp的好的开源的论坛可以下?
- 一个关于JInternalFrame使用的问题
- 想知道哪种显示图片的方式更消耗服务器资源
- 如何判断一个对象不存在?指这个对象已定义,但没有初始化。
- 请教一个关于JTable的问题
- [Microsoft][ODBC SQL Server Driver]连接占线导致另一个 hstmt
- 请问如何解压.JAR文件?
- 为什么int xx=12;System.out.println(xx>>32) 输出12 ?
- java 如何打开局域网上面的文件?
偶学JAVA不是很深,有些不是很懂,再向你表达一下:
我要从这样一个字串拆分后获取四个值,c=,o=,cn=这三个是固定为一个,都可为String型,ou=并不固定,有可能一个,可能两三个甚至还要多,所以定为vector,
import java.util.regex.*;public class RegexTest {
public RegexTest() {
}
public static void main(String[] args) {
String res = "C='TW', O='HiTRUST Banking', OU='HiTRUST', OU='0040000-BOT', OU='FXML', CN='9695839500'";
int length = res.length() - res.replaceAll("OU='").length();
String reg = "C='(.*)', O='(.*)'";
for (int i=0; i<length; i++)
reg += ", OU='(.*)'";
reg += ", CN='(.*)'";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(res);
String strs[] = new String[m.groupCount()];
if (m.matches()) {
for (int i = 1; i <= m.groupCount(); i++) {
System.out.println(m.group(i));
strs[i - 1] = m.group(i);
}
}
}
}
import java.util.regex.*;public class Token {
public Token() {
}
public static void main(String[] args) {
Vector vc = new Vector();
String res = "C='TW', O='HiTRUST Banking', OU='HiTRUST', OU='0040000-BOT', OU='FXML', CN='9695839500'";
String reg = "([^=]+)='([^=]+)'";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(res);
while (m.find()) {
//System.out.println(m.group(1));
System.out.println(m.group(2));
vc.add(m.group(2));
}
}
}
呵 这样也可