У меня есть этот код:Regex и найти в текстовом файле
package ggg;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.io.*;
public class regex {
public static void main(String args[]){
// String to be scanned to find the pattern.
String line = "This order was placed FRO-DDA-6666666 %10.25 %10.12 FRO-DDA-8888888 for QT3000! OK?";
String pattern = "\\d+\\.\\d{2}";
String pattern2 = "\\d{7}";
// Create a Pattern object
Pattern r = Pattern.compile(pattern);
Pattern t = Pattern.compile(pattern2);
// Now create matcher object.
Matcher m = r.matcher(line);
Matcher g = t.matcher(line);
try {
PrintWriter writer = new PrintWriter("C:\\Users\\John\\workspace\\ggg\\src\\ggg\\text.txt", "UTF-8");
for (int i = 1; m.find() && g.find(); i++) {
writer.println(g.group(0)+"->"+m.group(0));
}
writer.close();
} catch (IOException ex) {}
}
}
И результат есть:
6666666-> 10,25
8888888-> 10,12
Я хочу написать простой код для прочитайте файл text.txt, и если в этом файле есть «8888888», то распечатайте переднюю часть «8888888->», что мне делать?
Например, в нашем результате 10.12 фронт 888888->
я не понимаю вопрос. ваш пример дает значение 10.12. где проблема – MihaiC
У меня нет проблем. Мне нужен простой код или простой алгоритм, который читает файл text.txt, и если в этом файле есть «8888888», то распечатайте переднюю часть «8888888->» –
, чтобы вы хотите, чтобы он читал из файла, тогда отобразите 10.12, потому что он содержится в той же строке, что и 8888888->? – MihaiC