Я хочу найти, существует ли конкретный шаблон в моем текстовом файле или нет.Как сопоставить шаблон в тексте с помощью классов сканера и шаблона?
им, используя следующие классы для этого:
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's любое целое и любой длины.
и мой код для сопоставления с образцом является:
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 –
Они работали хорошо для меня. Может быть, немного подробный, но они должны работать. Попробуйте небольшую скомпилированную тестовую программу, такую как показано выше. –
У вас есть эта линия: - DBREF 1A1F A 102 190 UNP P08046 EGR1_MOUSE 308 396 –