试试这个正则表达式
/([^>]+?)(?=</B>)/g

解决方案 »

  1.   

    regex = "(?:<B>([^<]++))"我试下来结果是这样的(D:/RegexTest.txt):
    641258358  278587249  Life Goes On[278587249]  410711783  乐乐oО[410711783]  449616391  通缉犯↘婆娘[449616391]  625281357  小樱子[625281357]  627427573  葬爱·叛逆[627427573]  913498645  早些说出来~[913498645] 
    兄弟)(解情package temp;import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;/**
     * @date 2008-12-5,下午02:10:44
     */
    public class RegexHTML { /**
     * @param args
     * @throws IOException 
     */
    public static void main(String[] args) throws IOException {
    BufferedReader br = new BufferedReader(new FileReader(new File("D:/recieve/regexHTML.txt")));
    PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(new File("D:/RegexTest.txt"))));
    String line = "";
    String regex = "(?:<B>([^<]++))";
    Pattern pattern = Pattern.compile(regex);
    String res = null;

    while((line = br.readLine()) != null) {
    res = regexB(line, pattern);
    pw.println(res);
    }
    pw.flush();
    pw.close();
    br.close(); }

    public static String regexB(String line, Pattern pattern){
    Matcher matcher = pattern.matcher(line);
    String result = "";
    while(matcher.find()) {
    result += matcher.group(1) + "\t";
    }
    return result;
    }}
      

  2.   


    var str="";
    var ree=/([^>]+?)(?=<\/B>)/g;
    var ReMatchs = str.match(ree)
      

  3.   


    HOHO.
    我是在测试工具里作的测试忘记加了反斜线了。code/([^>]+?)(?=<\/B>)/g