我想查找一个特定的模式是否存在于我的文本文件中。如何使用扫描仪和模式类匹配文本中的模式?
即时通讯使用下面的类此:
java.util.regex.Pattern and java.util.Scanner;
我的样本文本行
String Line="DBREF 1A1F A 102 190 UNP P08046 EGR1_MOUSE 308 396";
和,我想匹配以下一种模式:
A 102 190
其中,在A的位置az或AZ,但单一章程。
在102位置的任何整数和任何长度。
在190的位置的任何整数和任何长度。
而且,我的模式匹配的代码是:
Scanner sr=new Scanner(Line);
Pattern p = Pattern.compile("\\s+([a-zA-Z]){1}\\s+\\d{1,}\\s+\\d{1,}\\s+");
while(sr.hasNext(p))
{
System.out.println("Pattern exists");
System.out.println("Matched String : "+sr.next(p));
}
但是,它存在有 模式不匹配,甚至..
我认为这个问题是我的模式字符串:
\\s+([a-zA-Z]){1}\\s+\\d{1,}\\s+\\d{1,}\\s+"
任何人,Plz帮我我应该使用什么模式字符串?
仍然没有工作。我认为问题是与pattern.compile参数 – 2011-02-06 21:01:21
他们的工作对我罚款。也许有点冗长,但他们应该工作。尝试一下如上所示的小编译测试程序。 – 2011-02-06 21:02:30