Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression
No Match

r"
"
gm

Test String

Code Generator

Generated Code

use strict; my $str = '1808-06-15T23:01:26 1867-07-20T05:46:32 2177-10-12T16:21:20 2037-06-07T11:43:16 2293-11-27T14:07:03 2103-08-17T23:18:27 2062-07-10T22:48:36 2052-05-03T20:52:46 1902-07-25T07:30:23 1854-11-08T04:48:52 1886-05-26T03:09:28 1967-08-24T20:39:03 2070-03-12T07:17:09 2157-12-13T05:33:09 1989-11-22T06:08:54 2136-12-06T08:50:20 1817-05-08T13:01:06 2192-01-10T02:21:35 1883-08-15T11:28:58 1965-07-02T23:38:56 1832-11-17T09:32:40 2126-08-18T20:20:37 2151-10-08T06:45:32 1927-08-08T21:18:18 1986-02-14T05:07:16 1933-10-13T13:17:56 2131-02-03T00:40:52 2081-05-18T21:16:35 1803-03-27T20:59:13 2116-12-18T07:04:52 2022-12-26T18:57:37 2070-10-20T22:53:22 2111-09-28T23:48:10 2050-10-10T00:46:35 1861-11-12T12:30:54 2294-11-01T13:57:38 1911-07-01T05:58:17 2240-07-13T10:22:25 2219-09-09T09:45:06 1971-12-22T00:15:30 2105-10-21T07:50:49 1848-08-01T18:44:14 2113-09-12T06:47:44 2148-01-16T06:31:47 2039-11-03T02:42:27 1967-05-21T09:45:56 2141-09-15T15:41:47 2229-02-20T12:06:33 2172-10-28T21:16:27 1923-03-18T08:38:14 2255-12-07T11:26:35 2022-06-01T20:12:48 2126-12-06T21:14:24 1992-10-09T00:53:40 1812-07-03T12:04:44 2238-07-23T05:01:13 2161-08-15T08:45:02 2049-06-23T11:48:48 2207-05-08T08:37:53 2010-03-03T06:14:49 2201-03-19T05:29:26 2092-12-19T19:01:31 2256-02-24T11:11:01 2122-01-14T12:31:05 2083-01-06T06:42:29 2250-07-27T19:01:03 1894-08-03T20:18:21 2209-05-26T09:26:17 2013-01-25T13:24:34 2131-03-17T04:14:25 1820-12-04T17:52:40 1808-01-01T04:08:07 2128-06-11T23:10:01 2095-01-26T01:40:19 2013-10-06T03:18:44 2159-03-19T15:12:52 1941-07-13T22:34:35 1820-06-04T14:01:58 2192-01-06T13:44:06 2229-07-06T12:45:32 1808-12-14T10:04:15 1871-12-12T20:15:42 2193-08-02T11:31:51 2131-08-02T18:33:25 1985-09-19T00:45:09 1837-12-23T14:39:48 2105-08-17T18:06:45 2077-11-14T14:48:31 2275-06-17T12:49:35 1821-10-08T05:20:56 2066-07-12T07:15:06 1809-01-08T19:22:51 1866-11-06T02:02:56 2132-04-14T07:56:04 2029-04-05T19:30:12 1809-12-22T07:12:04 2094-12-03T16:39:10 1890-08-03T15:31:54 2190-09-22T10:40:07 2224-10-15T06:18:39 1954-10-12T04:27:29 1983-09-22T04:02:57 1917-02-12T00:48:32 2195-05-24T16:07:28 2125-12-05T10:52:49 2033-05-05T22:57:22 2090-12-27T21:09:23 2008-09-28T10:20:53 1854-06-16T16:11:25 1938-08-19T17:59:11 2091-04-28T13:04:11 1886-05-17T23:43:55 2245-04-13T00:25:10 1942-01-07T15:19:18 2160-12-02T02:28:58 2089-02-04T21:47:35 1840-10-10T03:07:50 1828-09-09T13:03:05 1885-03-12T11:36:48 1856-12-17T23:35:17 1944-12-27T10:44:26 2207-10-02T16:59:18 2044-11-25T00:45:16 2273-06-22T03:31:41 1833-10-13T15:46:52 1881-06-27T00:10:01 2027-02-13T15:25:57 1871-01-20T17:28:53 2240-12-25T11:36:46 2261-07-19T08:35:12 2125-12-12T08:31:13 1950-12-09T17:44:49 1879-02-17T01:28:46 2227-07-22T07:37:44 2229-08-13T18:57:22 1809-01-12T12:37:18 2289-06-24T04:14:32 2090-06-17T18:10:20 2058-02-20T15:51:44 2241-01-28T11:52:25 1913-04-09T11:42:01 2057-11-03T20:18:54 1890-03-20T02:09:41 2032-10-20T12:05:17 1937-11-22T05:04:28 2128-06-10T05:23:28 2195-10-21T20:39:21 2000-11-23T20:47:14 2176-01-16T11:53:36 2198-09-12T18:53:51 2143-03-08T12:59:19 1811-09-12T08:39:23 2010-11-06T13:01:29 2098-04-05T06:01:34 2286-04-11T23:50:23 2236-05-16T17:35:43 2234-08-01T14:17:25 2137-02-28T20:37:42 1918-05-08T13:00:23 2262-04-05T17:44:10 2246-01-07T18:31:36 2149-07-01T10:02:15 2021-04-01T10:16:47 1885-08-27T11:19:43 1912-08-06T15:40:59 1869-03-13T03:27:39 1834-11-06T07:07:34 1972-08-10T14:08:57 2010-10-26T15:44:43 2098-05-18T13:44:26 1994-04-15T16:43:45 1961-10-10T07:40:09 1878-10-13T19:58:53 1840-11-15T13:00:19 1970-09-07T08:10:44 1897-06-17T08:18:23 1993-06-21T16:41:40 1924-10-25T08:18:39 1940-10-07T09:39:17 1863-08-08T22:44:29 2000-03-24T13:31:03 1965-08-04T22:28:49 2059-08-26T20:09:59 2265-03-09T23:47:53 1913-08-21T10:26:42 2000-12-07T04:33:00 1957-11-27T01:38:06 1809-04-05T11:28:19 2269-06-28T00:21:20 1814-12-05T02:59:31 2083-11-06T13:34:01 2296-05-08T23:13:26 1919-09-25T02:34:04 1916-06-04T20:19:32 2277-11-08T23:11:20 1986-11-17T14:06:53 2033-08-18T21:30:11 1892-08-04T14:07:52 2004-10-20T12:29:40 2289-09-22T19:19:56 2013-07-24T13:03:39 2125-10-16T03:53:50 1840-10-11T15:56:16 2224-07-09T11:45:25 2294-02-22T11:41:48 2284-02-07T19:07:19 2268-11-27T08:24:22 2100-09-08T19:04:38 2273-03-27T13:53:00 2256-03-16T20:42:46 2163-09-10T09:31:07 2129-03-10T19:38:20 2235-05-02T01:40:00 2075-12-19T04:12:41 1876-01-04T04:59:18 2150-07-17T08:59:41 2059-06-24T00:25:17 2147-08-13T11:17:30 1811-11-20T19:31:57 2174-02-12T16:09:38 1977-12-12T12:57:43 1950-04-26T02:53:39 2179-04-03T13:02:13 1908-12-20T22:58:45 2200-07-23T06:13:46 2166-09-03T15:17:19 2167-01-28T21:55:48 1918-07-06T20:44:04 1867-03-02T05:13:41 2093-09-11T21:33:22 2043-07-09T13:21:33 1929-02-09T17:23:03 2248-09-04T16:37:16 1889-04-15T16:59:24 2217-02-25T03:55:11 2261-09-22T22:43:26 2005-01-26T06:44:48 1828-02-23T02:52:37 2104-07-16T06:18:56 2119-09-11T11:39:25 1840-09-22T18:40:38 2285-01-24T17:01:42 1868-07-20T03:24:48 1901-09-13T11:12:46 2151-10-07T19:24:25 1908-08-17T16:04:58 1926-04-01T11:03:17 1824-04-12T16:11:57 2209-08-10T00:28:49 1819-02-20T10:40:24 2189-02-23T02:48:28 1899-07-15T10:37:34 1843-05-19T05:00:37 2216-09-24T05:06:35 2120-05-03T18:19:38 1932-08-22T07:24:36 2149-08-18T01:54:59 2298-11-03T06:16:36 2016-03-27T03:54:18 1944-04-20T00:27:49 2100-09-11T10:47:21 2194-11-23T18:53:26 2125-03-12T14:05:23 1925-02-05T21:02:10 1843-04-11T01:01:33 2218-10-20T01:15:44 2054-05-19T03:50:33 1869-06-15T23:53:27 1830-03-24T00:01:52 1976-07-22T20:24:25 2216-05-22T15:27:20 1869-05-14T16:07:58 2213-01-05T07:10:55 1846-11-25T13:38:55 1939-09-02T19:01:34 2261-06-21T23:13:56 2260-02-21T15:51:10 1992-07-25T07:51:13 2244-09-23T17:56:24 1880-08-19T19:18:37 2053-06-13T03:34:24 2222-10-21T05:05:06 1853-01-23T18:48:47 2084-03-19T09:34:21 2125-11-06T05:24:10 1896-02-14T13:44:39 2280-08-17T17:02:44 1847-05-16T02:09:13 1875-03-27T13:05:03 2252-08-04T14:05:26 2295-04-09T16:38:33 2045-08-27T00:59:47 1978-04-11T19:31:29 2048-12-27T04:17:08 2182-12-19T00:21:00 1802-07-12T13:03:20 2285-08-14T01:07:42 1969-07-23T20:47:07 2082-06-23T08:23:26 2224-07-07T03:27:18 1938-06-27T00:30:10 2197-10-07T09:32:28 2080-07-03T14:47:47 1998-06-08T16:13:03 1833-08-15T17:02:45 1864-09-14T15:13:11 1867-10-25T09:49:48 2176-11-18T12:07:07 2003-08-18T00:36:31 2253-03-03T16:57:10 2101-06-15T09:00:10 2269-07-03T01:26:00 1826-10-08T10:04:19 1985-12-15T18:42:50 1817-09-27T15:04:18 1826-03-08T19:35:21 1922-06-21T10:58:24 2254-09-13T19:17:33 2067-05-20T02:34:21 1834-05-21T10:44:30 2210-05-23T20:06:43 1946-12-07T16:57:05 2261-06-21T12:03:49 1833-11-05T23:35:02 2286-06-15T20:08:27 2105-08-10T06:46:35 2233-05-27T03:48:23 1894-01-27T17:38:37 2025-02-23T09:36:48 2212-07-26T08:17:40 2007-01-17T02:12:28 1972-05-13T07:00:51 2168-10-09T02:11:08 2122-09-11T01:03:10 1916-09-15T03:38:49 2048-08-08T20:50:27 2245-06-28T17:32:45 1900-01-09T14:39:55 2252-04-06T05:41:59 2111-10-07T10:36:32 1861-01-01T01:35:07 2187-06-24T08:11:54 1909-04-06T13:38:42 2084-07-26T14:19:18 1899-08-13T05:27:07 2055-04-21T08:45:05 1858-07-16T16:14:23 2207-01-11T03:05:20 2162-02-28T19:11:23 2225-09-18T12:19:48 2179-09-02T13:31:50 1994-11-17T14:00:43 1804-01-08T22:46:21 1979-11-04T00:35:29 2285-05-07T07:46:56 2272-06-08T09:19:27 1906-09-04T13:03:49 2176-07-28T00:41:21 2091-08-09T19:42:32 1940-05-23T17:12:42 1964-01-15T15:09:05 1896-09-04T18:20:11 2071-06-04T08:32:43 1956-09-08T05:04:58 1952-10-18T19:32:53 2279-12-06T15:30:25 1937-07-27T06:18:51 1805-09-11T08:19:00 2178-06-04T11:58:21 1961-10-07T03:47:25 2257-04-21T22:03:23 2248-04-07T09:06:46 2271-02-23T05:55:38 2046-02-27T00:08:07 1857-12-21T12:01:49 1930-04-21T18:44:35 2286-12-25T23:35:32 2023-11-13T07:53:07 1909-10-12T16:10:25 1855-09-01T03:54:04 2198-04-16T06:43:33 2186-02-13T08:35:48 1892-11-21T03:02:04 1844-07-09T09:20:45 2003-12-07T15:51:46 1842-09-02T22:49:41 2189-08-28T14:53:03 2268-04-04T10:19:27 1927-02-19T19:05:48 2038-03-05T20:43:32 1914-09-17T18:14:43 1888-12-12T03:39:29 1912-08-05T14:42:04 1891-10-25T09:55:20 2293-12-07T19:40:39 1877-09-18T21:44:52 1973-05-25T10:26:03 1887-09-05T20:37:40 1902-11-20T14:00:38 1975-07-12T17:31:15 2065-05-21T05:40:54 2218-09-13T07:58:44 2147-11-19T01:41:38 1989-10-11T11:23:02 2254-08-21T14:39:41 1897-05-03T09:43:29 2070-11-25T19:05:12 2067-09-23T12:27:54 1989-11-14T21:47:02 2264-10-03T08:45:16 2221-02-17T04:45:12 1993-06-08T09:36:55 2132-04-19T21:49:57 2183-08-03T03:00:09 2047-05-15T17:22:45 2291-08-24T15:31:53 2134-01-04T20:09:46 2168-11-03T22:55:05 2050-03-26T06:35:46 2048-03-13T22:50:05 2045-08-26T13:24:26 2192-03-23T04:14:56 2248-02-14T18:49:46 2174-06-28T07:09:18 2053-02-14T10:19:03 1855-06-16T04:05:53 1841-08-06T21:22:55 1923-08-14T15:14:40 2120-10-26T00:48:43 2124-01-06T08:55:38 2021-06-02T07:08:55 2068-08-19T19:28:32 2094-07-02T17:35:25 1844-03-07T10:43:00 1920-01-17T09:03:51 1937-08-05T02:27:34 2030-11-04T05:05:06 2298-06-22T03:44:28 2143-11-15T00:36:57 2259-02-05T03:08:48 2015-10-15T05:56:41 2123-07-10T10:13:43 1802-07-09T07:51:19 2245-09-27T03:01:18 2198-06-05T21:56:42 2081-05-22T21:46:21 2084-12-08T12:54:17 2297-06-05T04:00:36 2295-08-21T02:45:31 2155-04-12T17:59:54 1896-01-19T19:48:49 2012-07-08T05:48:23 2082-01-07T21:08:19 1994-02-20T03:31:32 1932-12-28T13:37:24 2265-08-08T07:56:41 1858-08-27T15:58:44 2071-12-04T16:34:27 2019-03-02T18:46:39 2235-03-17T23:47:45 2242-08-02T15:11:10 1851-05-11T23:46:57 2192-07-02T07:53:13 2137-05-27T07:57:04 1916-12-19T19:17:41 1910-12-04T13:13:56 1966-08-03T07:43:05 1880-07-25T09:04:35 1975-02-01T00:27:20 2079-01-18T13:45:01 2190-08-23T00:00:06 1833-11-08T11:44:45 2190-06-23T16:26:40 2235-06-09T12:50:51 1914-03-19T15:19:36 2097-06-06T18:20:29 1985-09-05T13:59:14 1952-08-09T05:53:13 2113-03-24T02:17:27 1994-08-04T05:24:27 2002-06-14T00:00:45 1940-02-11T00:33:23 1867-06-18T15:05:06 1979-11-18T19:43:39 2048-06-13T23:34:39 2181-01-27T03:24:49 1891-02-13T19:13:27 2265-11-16T15:13:57 2137-12-22T17:43:23 2026-05-27T22:07:16 1960-06-20T07:25:08 1838-01-13T14:51:32 1831-12-09T19:01:28 2262-07-28T17:32:30 2203-06-14T12:45:42 2226-10-17T19:23:47 1877-04-23T05:21:44 2238-11-16T01:34:09 2123-01-14T16:48:11 2009-03-27T18:14:01 2006-04-13T17:17:50 1944-11-23T20:28:01 2177-04-05T21:14:02 1989-08-18T07:42:03 1811-11-09T17:07:04 2247-11-24T11:46:18 2243-10-07T10:58:46 2181-09-15T05:48:36 2282-08-23T10:20:40 1999-08-05T23:33:36 1888-11-07T17:31:53 1895-03-09T18:22:33 2292-04-06T23:36:23 2158-09-19T07:33:40 1946-11-17T13:01:15 1930-02-24T18:48:04 1964-06-03T01:25:08 1959-07-27T01:17:28 1976-05-02T00:05:32 1868-04-10T06:28:21 2238-12-07T20:55:20 2249-01-19T21:41:25 1940-02-23T16:31:42 2105-10-24T22:07:12 2141-01-17T12:24:21 2231-07-17T16:07:39 1920-06-21T19:20:43 2292-07-02T05:22:41 1914-09-09T10:42:59 2173-11-06T13:36:32 1933-06-15T05:19:43 1935-09-18T23:23:32 1943-06-10T02:35:54 2080-05-05T13:24:08 2045-10-14T07:39:34 1961-12-12T20:42:16 2060-07-25T09:54:25 1822-02-28T08:53:32 1843-04-09T19:28:26 2203-07-01T13:41:31 1951-12-19T12:30:27 1936-02-08T23:20:27 2240-09-28T06:46:23 2107-03-26T20:23:25 2247-07-21T02:50:03 1808-10-20T04:11:13 2043-03-19T01:14:56 2212-08-11T10:21:57 2022-04-17T07:39:15 2268-11-27T03:32:05 1999-04-21T07:58:08 2278-05-20T14:31:18 2001-10-14T05:58:47 2035-02-12T00:42:55 2175-09-22T13:13:45 2242-09-26T15:16:30 1991-06-20T06:00:09 1815-09-17T15:35:59 2200-03-26T18:39:51 2216-03-16T06:08:08 2085-07-07T15:30:48 1960-12-06T17:26:55 2139-03-18T22:18:26 1897-04-11T05:16:35 2004-06-11T19:45:14 2195-07-07T16:30:25 2193-10-25T02:28:43 2215-08-13T11:21:10 1829-07-17T21:06:06 1927-08-13T01:45:55 2070-03-18T08:57:37 2205-03-10T12:56:34 1854-06-08T15:54:49 1952-09-10T19:43:42 1958-10-04T21:49:41 2147-07-24T22:27:41 2257-05-16T13:25:27 1874-03-27T01:36:59 2205-02-18T05:28:08 2210-10-02T04:11:42 1842-04-17T01:14:56 2208-01-13T17:55:48 2169-11-13T18:55:40 1966-04-18T18:11:02 1803-09-10T21:18:01 1912-05-15T20:53:08 2073-05-15T16:07:03 2261-12-10T04:40:14 2119-12-27T00:17:18 1953-08-26T14:38:59 1865-12-24T14:57:32 2128-02-08T05:05:10 2158-08-19T20:28:24 2046-09-27T03:10:16 2183-01-18T15:27:10 1804-04-04T14:20:39 2002-06-07T17:30:58 2014-03-26T03:46:16 2088-09-27T13:59:48 1885-05-05T01:24:38 2211-05-10T02:06:45 1859-05-06T04:59:20 1937-02-19T19:14:53 2237-01-16T19:27:29 1904-05-25T11:06:02 1979-04-09T18:56:17 1805-07-13T05:47:22 2042-01-06T22:50:11 2025-10-20T10:48:37 2089-05-08T15:54:32 2083-03-24T23:54:28 2285-10-18T18:43:11 2116-09-04T10:08:35 2216-02-23T13:54:36 1979-10-22T15:01:05 1907-08-13T17:08:42 2180-08-24T21:44:16 1828-03-12T04:13:17 2202-05-28T21:08:09 1969-09-14T07:14:05 2186-08-23T09:37:22 2043-01-06T09:58:31 2004-08-17T17:35:15 2018-08-16T15:10:39 2286-05-07T18:10:15 2123-02-12T05:16:56 2008-03-19T22:45:53 2132-10-08T11:55:30 1965-11-15T01:08:07 2009-06-14T16:13:27 2246-09-02T22:32:05 2173-02-02T11:13:31 2047-12-26T11:36:12 1966-06-10T19:03:47 1832-02-13T03:38:53 2187-03-03T23:17:24 2286-09-25T23:02:36 1829-05-10T18:53:10 2266-02-02T10:11:49 2033-03-06T17:28:06 1874-10-22T15:03:05 1958-09-15T14:21:42 1805-12-04T20:43:13 1952-07-06T03:12:42 1990-10-20T02:28:38 2174-03-07T02:54:38 2215-02-12T15:50:34 1931-10-26T20:03:30 2076-02-23T08:55:41 2243-03-13T18:54:50 1936-08-19T09:22:54 2071-01-14T01:16:44 2282-09-20T05:31:29 2080-07-11T04:21:30 2140-02-17T07:36:44 1919-07-28T18:40:55 2202-07-11T08:59:37 1989-02-28T13:28:17 2297-05-14T02:34:58 2056-03-15T00:24:22 1973-01-25T16:34:52 2051-05-11T19:19:44 1838-02-22T06:32:09 1897-11-06T01:49:40 2005-05-15T00:06:55 2143-06-26T00:42:01 1908-03-02T12:46:50 2038-12-24T08:01:14 2131-10-25T12:49:45 2056-06-28T20:35:14 1821-07-25T05:05:29 2170-03-21T11:56:13 2106-06-11T15:16:20 2097-03-11T23:36:42 1924-07-11T03:59:03 2293-09-25T10:49:27 2254-10-09T07:58:36 2192-09-28T10:03:43 2046-07-22T01:28:52 2174-10-22T09:36:03 2060-01-13T00:05:29 2253-01-13T07:58:50 2078-03-06T02:27:25 2258-05-16T07:03:41 2001-09-26T23:19:22 2177-10-12T07:52:29 2042-11-12T23:05:10 2004-06-08T12:10:04 2255-07-08T03:46:01 2197-02-04T21:19:23 1898-04-09T13:26:02 2008-05-12T05:57:41 2020-08-03T15:29:37 2067-06-22T03:57:02 2280-07-14T13:04:44 2161-04-12T05:21:48 2148-04-04T12:35:21 2080-02-12T04:49:52 2152-05-09T14:48:44 1847-10-17T03:34:55 1958-03-27T11:12:21 1886-05-05T17:58:23 2213-05-11T12:36:37 2214-04-17T07:59:20 1984-04-14T10:38:54 2298-07-24T19:31:06 2203-02-07T22:15:46 2062-08-17T17:34:20 1805-06-13T04:57:01 2266-09-15T15:57:24 1835-10-22T03:59:03 2228-09-28T11:15:44 1991-04-10T09:19:08 1844-01-18T02:00:56 2193-07-24T02:55:45 1966-05-23T20:10:25 2085-07-20T20:27:36 2170-04-13T03:32:15 1986-05-01T06:58:51 2243-05-27T21:33:34 1950-09-10T04:28:54 2243-10-04T02:03:01 2169-12-16T06:15:20 1811-07-27T10:30:30 2179-01-17T19:07:22 2153-07-26T18:19:10 2144-12-12T21:24:35 2172-11-22T18:23:55 1965-12-25T17:56:39 2270-05-28T15:50:10 1908-09-27T18:49:00 2233-03-25T22:47:58 1943-01-10T20:08:48 2053-11-14T13:55:34 2106-08-07T20:56:45 1837-12-06T23:43:27 2089-11-07T12:02:23 1860-09-09T18:56:51 2290-05-28T04:39:40 2086-11-21T14:40:55 1988-06-12T18:29:27 2037-03-04T19:06:57 1937-12-22T07:49:06 2164-01-06T20:06:49 2258-08-16T07:23:36 2262-04-06T08:03:42 1929-02-20T00:53:04 2045-04-17T13:09:29 2265-09-07T15:55:32 1967-01-07T09:11:35 2012-07-15T05:10:27 1943-08-22T01:41:18 2060-11-14T03:39:41 2189-06-10T17:32:33 2105-09-23T02:34:25 1842-07-24T19:56:24 1924-03-21T14:49:40 2064-08-08T17:08:45 1853-06-01T17:47:39 1978-02-25T16:03:30 1977-11-20T15:41:34 2098-07-12T14:18:24 2182-06-09T16:22:03 2097-05-04T12:17:27 2214-03-12T00:56:23 2299-09-28T22:25:22 1962-03-02T02:33:48 1970-11-10T19:56:16 1919-10-02T22:03:11 2157-04-12T17:32:51 2196-03-07T10:29:33 1847-09-28T15:21:04 1992-03-27T15:30:53 1869-04-23T04:45:56 2188-05-05T08:03:25 2042-06-11T13:47:42 2091-07-02T14:42:02 2003-06-24T02:18:23 1994-01-07T14:08:10 1992-06-21T16:24:20 1900-04-18T01:11:44 1857-06-22T15:43:03 1976-11-16T17:50:09 2000-07-22T13:06:08 2249-10-04T00:08:51 2152-01-06T09:00:09 2030-07-11T09:24:35 1964-02-18T06:57:21 2074-11-06T22:14:24 2013-06-03T03:29:38 2289-12-21T11:26:33 1879-07-25T03:21:21 2286-02-14T00:41:27 2258-01-21T13:55:04 1862-09-28T13:03:28 2254-05-21T03:32:53 2080-06-19T10:27:49 1864-03-04T09:44:19 2144-04-26T07:12:00 1979-07-22T13:45:03 2044-07-21T03:29:32 2263-03-01T08:32:27 1935-04-01T05:47:53 2005-03-20T13:04:08 2072-11-06T22:28:32 1859-04-17T15:55:25 2227-09-28T09:27:45 1896-08-09T14:44:58 2179-03-04T01:51:47 2243-08-02T20:02:02 2143-11-18T23:17:55 2199-11-17T00:08:44 1951-12-16T14:50:18 1975-06-16T10:23:16 1891-11-28T21:17:06 2038-07-04T06:50:14 2124-09-14T17:34:47 2100-03-08T19:20:33 1966-09-12T08:45:33 2063-01-10T11:17:19 1918-08-27T12:45:44 2113-07-05T01:24:02 1999-03-04T04:59:25 2000-06-17T22:25:32 1845-05-02T10:20:33 2034-03-06T17:25:13 2150-08-25T15:33:26 2140-04-27T10:54:18 1802-06-12T11:05:39 2220-04-19T06:37:37 2121-10-17T05:51:26 2241-05-10T20:58:46 1887-05-05T19:24:40 2100-11-11T18:37:05 1847-02-19T05:15:22 1980-01-18T20:48:21 1930-07-19T23:38:05 1845-12-25T00:34:22 1978-02-06T01:05:29 1994-05-23T23:08:55 2015-06-14T22:10:57 2264-10-16T16:09:21 1809-11-15T01:45:40 1952-06-11T15:17:39 1879-08-03T06:19:06 2280-01-20T18:08:31 2157-07-08T10:50:19 2191-01-16T07:16:03 2026-05-11T18:33:54 1987-11-16T17:51:36 2230-12-02T03:03:11 2023-06-13T09:18:22 2089-09-20T11:52:47 1949-07-20T10:35:43 1861-03-06T10:30:25 2075-04-08T09:13:50 2242-06-24T00:16:37 2004-06-08T01:31:13 1820-11-07T11:23:23 1829-02-07T09:46:30 1855-06-26T01:47:47 1981-12-23T22:29:32 1933-12-13T02:28:47 2230-09-16T02:20:42 1811-12-09T05:51:38 2196-03-14T10:49:21 1979-06-11T18:15:08 2029-03-16T00:44:43 2118-09-01T19:39:59 1952-07-24T01:33:12 2218-08-06T20:32:54 1893-11-25T02:03:48 1835-05-10T03:25:45 2177-05-19T00:45:40 1824-09-14T17:51:17 2027-06-26T01:03:24 2085-08-15T20:34:01 2280-11-26T00:24:14 2074-03-26T02:59:15 2052-08-22T00:14:32 1938-11-11T14:53:49 1959-12-22T00:12:52 1985-06-13T02:03:07 2016-12-02T08:38:49 2219-03-18T11:27:10 1905-07-04T11:37:56 2053-12-28T00:59:47 1971-03-15T12:10:42 1954-11-23T15:36:07 1988-12-06T19:34:07 2167-03-07T13:18:01 1884-09-23T09:27:49 1887-05-11T13:12:27 2207-08-16T12:59:55 2190-10-04T09:17:06 2056-12-02T06:36:47 1901-12-09T09:54:59 2060-09-10T05:12:40 1972-06-19T00:40:21 1879-11-19T17:41:10 2265-03-27T16:49:28 1834-08-07T07:13:59 1887-10-06T15:59:55 2276-04-28T12:24:41 1836-03-02T23:48:01 2022-03-12T09:17:44 2187-12-08T21:47:29 1951-02-21T21:54:23 2022-11-23T05:43:15 2198-07-26T18:06:44 2217-01-05T01:54:04 2045-09-18T16:16:49 2183-12-02T21:39:22 2279-02-22T07:08:47 2024-09-19T16:16:40 2114-11-14T16:29:08 2125-08-05T18:57:52 2291-05-22T20:04:48 1820-08-11T09:16:03 2071-01-18T17:51:52 2066-12-10T09:56:46 2200-09-25T15:20:01 1982-10-13T18:54:18 2035-03-17T02:51:12 2215-05-21T15:32:15 1826-03-06T20:51:14 2067-09-15T14:13:31 1802-08-14T13:24:43 2024-07-03T11:02:38 1970-12-21T13:55:09 2037-04-28T18:19:54 2041-02-10T22:50:35 2147-06-08T13:31:30 1852-12-12T10:24:19 1881-05-23T01:30:07 2241-10-11T19:20:04 2099-02-24T14:40:20 2223-06-04T20:32:49 1871-08-14T19:52:10 1948-06-11T05:27:27 1832-07-19T20:05:21 1976-04-26T11:24:43 2009-04-16T22:44:28 2054-12-23T02:02:02 1810-09-20T11:47:28 2017-01-17T09:22:16 1952-07-10T15:51:10 1841-06-02T22:28:01 2102-01-22T06:21:27 2224-01-06T20:28:45 1890-01-03T04:22:42 1844-05-22T03:55:22 1983-03-20T08:15:37 1808-01-06T00:49:29 2200-06-16T15:18:44 2258-11-24T14:15:23 1924-03-17T10:10:45 1870-09-19T21:49:48 1955-08-23T17:08:05 1883-08-26T10:21:43 1810-11-13T08:08:37 2058-01-08T07:39:16 1961-12-03T17:46:35 1945-11-04T15:25:52 2248-03-12T11:10:29 2271-05-07T03:27:46 2033-04-07T20:03:52 1851-09-12T10:16:13 2076-01-16T22:49:36 1929-02-07T16:33:18 2186-03-11T16:50:43 2027-01-20T18:33:03 2277-06-17T17:39:44 1944-06-07T12:04:34 1803-10-14T05:55:18 2093-12-24T22:07:13 2078-02-13T12:49:29 2173-10-09T12:36:23 2260-06-21T00:38:04 1919-01-23T15:06:56 2001-04-09T15:28:02 2210-06-19T05:45:16 2101-08-28T12:07:25 1972-06-08T17:15:13 1950-07-15T18:20:37 1986-09-07T00:08:47 1879-10-28T15:12:17 1824-05-15T10:51:00 1828-07-25T04:50:47 2283-10-17T00:39:10 1845-08-15T11:06:03 1924-01-08T03:15:35 2063-11-08T13:54:24 2068-05-06T20:15:46 2156-06-19T05:42:58 2287-03-08T19:48:25 2040-06-28T16:18:46 2200-07-28T23:35:37 2191-01-12T22:00:51 1962-06-14T22:14:19'; my $regex = qr/\d{4}(-|)\d{2}(-|)\d{2}T\d{2}((:\d{2}|):\d{2}|)/mp; if ( $str =~ /$regex/g ) { print "Whole match is ${^MATCH} and its start/end positions can be obtained via \$-[0] and \$+[0]\n"; # print "Capture Group 1 is $1 and its start/end positions can be obtained via \$-[1] and \$+[1]\n"; # print "Capture Group 2 is $2 ... and so on\n"; } # ${^POSTMATCH} and ${^PREMATCH} are also available with the use of '/p' # Named capture groups can be called via $+{name}

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 Perl, please visit: http://perldoc.perl.org/perlre.html