0

我有以下格式的文件

AAA
BBB
联赛="NFL"
联赛="CFB"
联赛="NBA"
联赛="CBK"
CCC
DDD

我只想列出包含 League 但不包含 NFL 或 NBA 的行。所以从上面,我只想要:

联赛="CFB"
联赛="CBK"

先感谢您。

4

3 回答 3

0

最后两个将被解释为 /League="[^NFLBA]"/

于 2013-02-11T18:20:15.947 回答
0

你必须使用正则表达式吗?(是为了作业吗?)

如果没有,您可以读取文件并像这样过滤它:

BufferedReader in = new BufferedReader(new FileReader("filePath"));

String line = in.readLine();
List<String> myList = newArrayList<String>();

while(line != null){
    if ((line.startsWith("League")) && 
        (!line.contains("NFL")) && 
        (!line.contains("NBA"))){

           myList.add(line)

        }
 }

填充包含文件中所有以 League 开头但不包含 NFL 或 NBA 的字符串的字符串列表。

在一行上使用正则表达式匹配这样做会很丑陋。

于 2012-11-15T22:49:03.320 回答
0

像这样的东西应该工作:

/League="[^(NFL)|(NBA)]"/
于 2012-11-15T22:44:26.503 回答