private void testOneLine(String line) { testMatch("([^\\s]*) ([^\\s]*) ([^\\s]*) ([^\\*-]*) ([^\\s]*)?", line, true, null); }
@Test public void testEcmwfTable() { testOneLine("2 msl MSL Mean sea level pressure Pa"); testOneLine("3 3 None Pressure tendency Pa s**-1"); // testOneLine("4 pv PV Potential vorticity K m**2 kg**-1 s**-1"); testOneLine("21 21 None Radar spectra (1) -"); }
public void testCalendarDate() { String m = "sec since 1970-1-1 00:00:00Z"; //String m = "1422175657634555 microsecs since 1970-1-1T0:0:0Z"; // String p = "(\\w*)\\s*since\\s*([\\+\\-\\d]+)([ t]([\\.\\:\\d]*)([ \\+\\-]\\S*)?z?)?$"; testMatch(CalendarDateUnit.udunitPatternString, m, true, null); }
@Test public void testUdunit2() { String m = "hours since 1900-1-1 0:0:0"; String p = "(\\d*)\\s*(\\w*)\\s*since\\s*(.*)$"; testMatch(p, m, true, new String[] {"", "hours", "1900-1-1 0:0:0"}); }
@Test public void testGhcnm2() { String m = "101603550001932TAVG 1010 1 980 1-9999 1420 1 1840 1-9999 2290 1-9999 2440 1-9999 -9999 -9999"; String p = "(\\d{11})(\\d{4})TAVG(([ \\-\\d]{5})(.)(.)(.)){3}.*"; testMatch(p, m, true, new String[] {"10160355000", "1932", "-9999 ", "-9999", " ", " ", " "}); }
@Test public void testLogMatch() { testOne("^(\\d+-\\d+-\\d+T\\d+:\\d+:\\d+\\.\\d+ [+-]\\d+) \\[(.*)]\\[(.*)] (\\w+)[\\s]+- ([^-]+) - (.*)", "2015-07-23T21:24:23.760 +0000 [ 49132][ 1] INFO - threddsServlet - Remote host: 172.17.42.1 - Request: \"GET /thredds/ HTTP/1.1\"", true); }
@Test public void testFrag() { String m = "2011-02-09T06:00:00Z"; String p = "([\\+\\-\\d]+)([ T]([\\.\\:\\d]*)([ \\+\\-]\\S*)?Z?)?$"; testMatch(p, m, true, new String[] {"2011-02-09", "T06:00:00Z", "06:00:00", null}); }
@Test public void testLogMatchFrag1() { testOne("^(\\d+-\\d+-\\d+T\\d+:\\d+:\\d+\\.\\d+ [+-]\\d+)", "2015-07-23T21:24:23.760 +0000", true); }
@Test public void testGhcnmStn() { // 1 2 3 4 5 6 7 8 9 10 11 12 // 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 //String m = "10160490000 35.6000 -0.6000 90.0 ORAN/ES SENIA ALGERIA 98U 492HIxxCO10A 6WARM CROPS B"; String m = "20558362000 31.2000 121.4000 7.0 SHANGHAI CHINA 23U10980FLxxCO25A 1PADDYLANDS C"; String p = "(\\d{11}) ([ \\.\\-\\d]{8}) ([ \\.\\-\\d]{9}) ([ \\.\\-\\d]{6}) (.{30}) ([ \\-\\d]{4})(.)([ \\-\\d]{5})(..)(..)(..)([ \\-\\d]{2})(.)(..)(.{16})(.).*"; testMatch(p, m, true, new String[] {"20558362000", " 31.2000", " 121.4000", " 7.0", "SHANGHAI CHINA ", " 23", "U", "10980", "FL", "xx", "CO", "25", "A", " 1", "PADDYLANDS ", "C"}); }
@Test public void testIgraStn() { String m = "JN 01001 JAN MAYEN 70.93 -8.67 9 GL 1963 2007"; //String m = "ID 96845 SURAKARTA PANASAN -7.87 110.92 104 1973 1993"; String p = "([A-Z]{2}) (\\d{5}) (.{35}) ([ \\.\\-\\d]{6}) ([ \\.\\-\\d]{7}) ([ \\-\\d]{4}) (.)(.)(.) ([ \\d]{4}) ([ \\d]{4})$"; testMatch(p, m, true, new String[] {"JN", "01001", "JAN MAYEN ", " 70.93", " -8.67", " 9", "G", "L", " ", "1963", "2007"}); }
@Test public void testIgraPorHead() { String m = "#0309119891109069999 11"; String p = "#(\\d{5})(\\d{4})(\\d{2})(\\d{2})(\\d{2})(\\d{4})([ \\d]{4})$"; testMatch(p, m, true, new String[] {"03091", "1989", "11", "09", "06", "9999", " 11"}); }
@Test public void testUdunit() { String m = "3 secs since 1991-01-01T03:12"; String p = "(\\d*) (\\w*) since ([+-]?[0-9]{1,4})\\-([0-9]{1,2})\\-([0-9]{1,2})[T ]([+-]?[0-9]{1,2}):([0-9]{1,2})(:([0-9]{1,2}))?.*$"; testMatch(p, m, true, new String[] {"3", "secs", "1991", "01", "01", "03", "12", null, null}); }
@Test public void test5() { testMatch("(.*)\\(see Note.*", "Software identification (see Note 2)", true, new String[]{"Software identification "}); }
@Test public void testIgraPor() { String m = "20 99200 -9999 44 48-9999-9999"; String p = "(\\d{2})([ \\-\\d]{6})(.)([ \\-\\d]{5})(.)([ \\-\\d]{5})(.)([ \\-\\d]{5})([ \\-\\d]{5})([ \\-\\d]{5})$"; testMatch(p, m, true, new String[] {"20", " 99200", " ", "-9999", " ", " 44", " ", " 48", "-9999", "-9999"}); }
@Test public void testDate() { String m = "secs since 1997-07-16T19:20+01:00"; String p = "(\\w*)\\s*since\\s*([\\+\\-\\d]+)([ T]([\\.\\:\\d]*)([ \\+\\-]\\S*)?Z?)?$"; testMatch(p, m, true, new String[] {"secs", "1997-07-16", "T19:20+01:00", "19:20", "+01:00"}); }