import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "Instrument Method\\s*[=:-]\\s*(?<dm>.*)";
final String string = "This data was acquired in Method&Run Control.\n"
+ "The MSD parameters were saved in the msdiag register file.\n"
+ "This msparms.txt file was built using the values from the msdiag register.\n"
+ "Some parameters normally reported under MSData acquisition in Tune \n"
+ "may be missing from this msparms.txt file. You may be able to read these \n"
+ "values from Data Analysis. These items are marked with an asterisk (*).\n"
+ " \n"
+ " \n"
+ " \n"
+ "File : C:\\HPCHEM\\1\\DATA\\FIA.D\n"
+ "Operator : Apps Chemist\n"
+ "Date acquired : Wed Apr 09 17:50:26 1997\n"
+ "Instrument Method : Appsprite2\n"
+ " \n"
+ " \n"
+ "Sample information\n"
+ "----------------------------------\n"
+ "Sample name : 50 ng caffeine\n"
+ "Misc info : 50 ng Caffeine run in condensed mode varying fragmentor\n"
+ " \n"
+ " \n"
+ "MS parameters\n"
+ "----------------------------------\n"
+ "Tune File : C:\\HPCHEM\\1\\1946TUNE\\atunes.tun\n"
+ "Skim1 : Not Applicable\n"
+ "Skim2 : 8.0 V \n"
+ "Ion Energy : 5.0 V \n"
+ "Lens1 : 1.4 V \n"
+ "Lens2 : 27 V \n"
+ "Iris : 350 V \n"
+ "HED : 10000 V \n"
+ "Width Gain : -70 \n"
+ "Width Offset : Variable \n"
+ " Mass : Value \n"
+ " --------------------------\n"
+ " 118.10 : -11 \n"
+ " 622.03 : -14 \n"
+ " 922.01 : -2 \n"
+ " 1521.97 : -8 \n"
+ " 2121.93 : -13 \n"
+ " 2721.89 : -12 \n"
+ " --------------------------\n"
+ "Mass Gain : 4.40 \n"
+ "Mass Offset : Variable \n"
+ " Mass : Value \n"
+ " --------------------------\n"
+ " 118.10 : 0 \n"
+ " 622.03 : 0 \n"
+ " 922.01 : 0 \n"
+ " 1521.97 : 0 \n"
+ " 2121.93 : 0 \n"
+ " 2721.89 : 0 \n"
+ " --------------------------\n"
+ "Quad DC : 0.00 V \n"
+ "Octopole Peak : 300 V \n"
+ "Octopole Knee : 307 Da \n"
+ "Mass Filter : Gaussian \n"
+ "Mass Filter Width : 0.30 Da \n";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html