2013-02-13 36 views
1

我想根据我的正则表达式在java中采取一个字符串。假设我有一个字符串"R12T12W5P12T5L3"
。现在我想要这样的事情:myStr[0]="R12T12",myStr[1]="W5P12",myStr[2]=T5L3.我想先让我的正则表达式首先是一个字符,然后是一个数字,然后是一个字符并持续一个数字。 我该怎么做?字符串与正则表达式分割

+2

在什么语言? – 2013-02-13 11:40:17

+0

拆分的逻辑是什么?我没有明白。 – PaNaVTEC 2013-02-13 11:40:51

+0

你能制定这些比赛应该基于哪些规则吗?它有助于[构建一个正则表达式] – Bergi 2013-02-13 11:41:46

回答

3
String s="R12T12W5P12T5L3"; 
    String regex = "([A-Z]\\d+){2}"; 
    Pattern p = Pattern.compile(regex); 
    Matcher m = p.matcher(s); 
    while(m.find()){ 
     System.out.println(m.group(0)); 
    } 

这将打印

R12T12 
W5P12 
T5L3 

,你可以把它们放入一个列表,并转换成数组结尾。

0

从正则表达式的字符串的建筑物内的操作,在javascript:

var str = "R12T12W5P12T5L3"; 
var result = str.split(/(?=[^\d]){2}/).map(function(v,i,a){ 
    return i%2 ? a[i-1]+v+'",' : 'myStr['+(i/2)+']="' 
}).join('').slice(0,-1); 

结果:

myStr[0]="R12T12",myStr[1]="W5P12",myStr[2]="T5L3" 
+0

该死的......现在语言已被指定... – 2013-02-13 11:48:42