FormulaProof · Evidence
Execution log
Sixty regular expressions, copied from Google Sheets tutorials, run in a real sheet
| Cell | Formula | What Google returned |
|---|---|---|
| B1 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","this(.*)that") REGEXEXTRACT: this(.*)that Published at https://www.statology.org/google-sheets-extract-text-between-two-characters/ — "Extract text between two literal string delimiters" | TRUE |
| B2 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","ran(.*)miles") REGEXEXTRACT: ran(.*)miles Published at https://www.statology.org/google-sheets-extract-text-between-two-characters/ — "Capture content between two specific words" | TRUE |
| B3 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\((.*)\)") REGEXEXTRACT: \((.*)\) Published at https://www.statology.org/google-sheets-extract-text-between-two-characters/ — "Extract text enclosed within parentheses" | TRUE |
| B4 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\*(.*)\*") REGEXEXTRACT: \*(.*)\* Published at https://www.statology.org/google-sheets-extract-text-between-two-characters/ — "Extract text between asterisk characters" | TRUE |
| B5 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(\w*)\s(\d+)") REGEXEXTRACT: (\w*)\s(\d+) Published at https://officewheel.com/google-sheets-regexextract-between-two-characters/ — "Return both a word and the following digits as two capture groups" | TRUE |
| B6 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(\w*)") REGEXEXTRACT: (\w*) Published at https://officewheel.com/google-sheets-regexextract-between-two-characters/ — "Pull out the first word" | TRUE |
| B7 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(.+)") REGEXEXTRACT: (.+) Published at https://officewheel.com/google-sheets-regexextract-between-two-characters/ — "Match and capture all content of a cell" | TRUE |
| B8 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[0-9]+") REGEXEXTRACT: [0-9]+ Published at https://officewheel.com/google-sheets-regexextract-between-two-characters/ — "Extract one or more digits" | TRUE |
| B9 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[A-Z]") REGEXEXTRACT: [A-Z] Published at https://officewheel.com/google-sheets-regexextract-between-two-characters/ — "Find the first capital letter" | TRUE |
| B10 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[a-z]") REGEXEXTRACT: [a-z] Published at https://officewheel.com/google-sheets-regexextract-between-two-characters/ — "Find the first lowercase letter" | TRUE |
| B11 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$") REGEXMATCH: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ Published at https://www.finoptimal.com/resources/regex-extract-in-google-sheets-a-power-users-guide-to-string-manipulation — "Validate that a string is a well-formed email address" | FALSE |
| B12 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^\(\d{3}\) \d{3}-\d{4}$") REGEXMATCH: ^\(\d{3}\) \d{3}-\d{4}$ Published at https://www.finoptimal.com/resources/regex-extract-in-google-sheets-a-power-users-guide-to-string-manipulation — "Validate a US phone number in (XXX) XXX-XXXX format" | FALSE |
| B13 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}") REGEXEXTRACT: [A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,} Published at https://www.sheetfx.net/blog/clean-names-and-emails-regexextract-split-google-sheets — "Extract a standard email address from within a text string" | FALSE |
| B14 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","([^@]+)") REGEXEXTRACT: ([^@]+) Published at https://www.formulabot.com/google-sheets/regexextract-function — "Extract the username portion (before @) from an email address" | TRUE |
| B15 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(.+)@") REGEXEXTRACT: (.+)@ Published at https://productivityspot.com/regexextract-google-sheets/ — "Extract the content before the @ symbol (email username)" | TRUE |
| B16 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","@(.+)") REGEXEXTRACT: @(.+) Published at https://productivityspot.com/regexextract-google-sheets/ — "Extract the domain part (after @) from an email address" | TRUE |
| B17 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","@(.+)$") REGEXEXTRACT: @(.+)$ Published at https://www.owox.com/blog/articles/regex-functions-google-sheets — "Extract the domain name after @ from an email address" | TRUE |
| B18 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith",">(.+)<") REGEXEXTRACT: >(.+)< Published at https://productivityspot.com/regexextract-google-sheets/ — "Extract the text enclosed between a > and a < character" | TRUE |
| B19 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(http|https)://[a-zA-Z0-9./?=_-]+") REGEXEXTRACT: (http|https)://[a-zA-Z0-9./?=_-]+ Published at https://www.bardeen.ai/answers/how-to-extract-urls-and-links-from-google-sheets — "Extract an HTTP/HTTPS URL from a cell of text" | TRUE |
| B20 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(\w+)(?:, )(\w+)") REGEXREPLACE: (\w+)(?:, )(\w+) Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Reorder 'Surname, First' to 'First Surname' by swapping two capture groups" | TRUE |
| B21 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d+") REGEXREPLACE: \d+ Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Replace every run of digits with the literal 2021" | TRUE |
| B22 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(\d{2})-(\d{2})-(\d{4})") REGEXREPLACE: (\d{2})-(\d{2})-(\d{4}) Published at https://www.thebricks.com/resources/how-to-use-regexreplace-in-google-sheets-a-step-by-step-guide — "Reformat MM-DD-YYYY date to YYYY-MM-DD by rearranging capture groups" | FALSE |
| B23 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","dog") REGEXREPLACE: dog Published at https://www.thebricks.com/resources/how-to-use-regexreplace-in-google-sheets-a-step-by-step-guide — "Replace the word dog with cat" | FALSE |
| B24 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^0-9]") REGEXREPLACE: [^0-9] Published at https://www.thebricks.com/resources/how-to-use-regexreplace-in-google-sheets-a-step-by-step-guide — "Strip all non-digit characters from a phone number" | TRUE |
| B25 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith"," .*") REGEXREPLACE: .* Published at https://www.thebricks.com/resources/how-to-use-regexreplace-in-google-sheets-a-step-by-step-guide — "Keep only the first name by deleting everything from the first space onward" | TRUE |
| B26 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^https?:\/\/") REGEXREPLACE: ^https?:\/\/ Published at https://www.thebricks.com/resources/how-to-use-regexreplace-in-google-sheets-a-step-by-step-guide — "Remove the http:// or https:// protocol prefix from a URL" | FALSE |
| B27 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","S.*d") REGEXREPLACE: S.*d Published at https://support.google.com/docs/answer/3098245?hl=en — "Replace the substring from S to the last d with the literal Bed" | FALSE |
| B28 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^\d]") REGEXREPLACE: [^\d] Published at https://smoothsheet.com/blog/how-to/google-sheets-regex/ — "Remove all non-digit characters from a phone number" | TRUE |
| B29 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(\d{2})/(\d{2})/(\d{4})") REGEXREPLACE: (\d{2})/(\d{2})/(\d{4}) Published at https://smoothsheet.com/blog/how-to/google-sheets-regex/ — "Convert MM/DD/YYYY date to YYYY-MM-DD via capture-group rearrangement" | TRUE |
| B30 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","<[^>]+>") REGEXREPLACE: <[^>]+> Published at https://smoothsheet.com/blog/how-to/google-sheets-regex/ — "Strip all HTML tags from text" | TRUE |
| B31 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^(\w+)\s(\w+)$") REGEXREPLACE: ^(\w+)\s(\w+)$ Published at https://unlimitedsheets.com/blog/regex — "Reorder 'First Last' into 'Last, First' by swapping capture groups" | FALSE |
| B32 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(?i)([a-z0-9._%+\-]+)@") REGEXREPLACE: (?i)([a-z0-9._%+\-]+)@ Published at https://unlimitedsheets.com/blog/regex — "Mask the local part of an email address before the @ sign" | TRUE |
| B33 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","colour") REGEXREPLACE: colour Published at https://unlimitedsheets.com/blog/regex — "Nest REGEXREPLACE to normalize British spellings colour/favour to American" | FALSE |
| B34 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d[\d,.]*") REGEXEXTRACT: \d[\d,.]* Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Extract a number that may contain commas or decimals and convert to numeric" | TRUE |
| B35 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\b\d{3}-\d{3}-\d{4}\b") REGEXMATCH: \b\d{3}-\d{3}-\d{4}\b Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Validate a US phone number in XXX-XXX-XXXX format" | FALSE |
| B36 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\b[0-9]{4}\b") REGEXMATCH: \b[0-9]{4}\b Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Validate a 4-digit number (e.g. a year/vintage) with word boundaries" | TRUE |
| B37 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$") REGEXMATCH: ^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$ Published at https://unlimitedsheets.com/blog/regex — "Validate whether a cell looks like a valid email address" | FALSE |
| B38 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^\d{10}$") REGEXMATCH: ^\d{10}$ Published at https://unlimitedsheets.com/blog/regex — "Validate a phone number as exactly 10 digits" | FALSE |
| B39 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^https?://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,}(/.*)?$") REGEXMATCH: ^https?://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,}(/.*)?$ Published at https://unlimitedsheets.com/blog/regex — "Validate that a URL starts with http/https, has a valid domain and optional path" | FALSE |
| B40 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d{4}-\d{3}-\d{4}") REGEXMATCH: \d{4}-\d{3}-\d{4} Published at https://blog.bettersheets.co/philippines-phone-number-validation-use-of-regexmatch-in-google-sheets/ — "Validate a Philippine phone number in the XXXX-XXX-XXXX format" | FALSE |
| B41 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[0-9]{5}") REGEXEXTRACT: [0-9]{5} Published at https://www.coursera.org/articles/regex-match-google-sheets — "Extract/match text of exactly five digits (ZIP code)" | FALSE |
| B42 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","^[a-z]+$") REGEXMATCH: ^[a-z]+$ Published at https://www.usemage.com/google-sheets-how-to/how-to-use-regular-expressions-in-google-sheets — "Check if a value contains only lowercase letters" | FALSE |
| B43 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^\x00-\x7F]") REGEXREPLACE: [^\x00-\x7F] Published at https://sheetsformarketers.com/1text-formatting-in-google-sheets/ — "Remove all non-ASCII (non-English/accented/foreign) characters from a string" | FALSE |
| B44 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^0-9A-Za-z]") REGEXREPLACE: [^0-9A-Za-z] Published at https://sheetsformarketers.com/1text-formatting-in-google-sheets/ — "Remove everything that is not an English letter or digit" | TRUE |
| B45 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^\x20-\x7E]") REGEXREPLACE: [^\x20-\x7E] Published at https://sheetsformarketers.com/1text-formatting-in-google-sheets/ — "Strip emojis and non-printable/non-ASCII characters, keeping printable ASCII" | FALSE |
| B46 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^A-Za-z]+") REGEXREPLACE: [^A-Za-z]+ Published at https://scales.arabpsychology.com/stats/how-to-remove-special-characters-in-google-sheets/ — "Keep only English alphabet letters, removing numbers, symbols and non-English characters" | TRUE |
| B47 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[^0-9a-zA-Z]") REGEXREPLACE: [^0-9a-zA-Z] Published at https://scales.arabpsychology.com/stats/how-to-remove-special-characters-in-google-sheets/ — "Keep English letters and digits, remove all special/non-English characters" | TRUE |
| B48 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[!$%]") REGEXREPLACE: [!$%] Published at https://scales.arabpsychology.com/stats/how-to-remove-special-characters-in-google-sheets/ — "Remove only the specific symbols exclamation point, dollar sign and percent sign" | FALSE |
| B49 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[áàâäãå]") REGEXREPLACE: [áàâäãå] Published at https://en.digitalmalayali.in/remove-accents-in-google-sheets-functions-regex-script/ — "Replace accented a-vowels with plain 'a'" | FALSE |
| B50 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[éèêë]") REGEXREPLACE: [éèêë] Published at https://en.digitalmalayali.in/remove-accents-in-google-sheets-functions-regex-script/ — "Replace accented e-vowels with plain 'e'" | FALSE |
| B51 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[0-9]") REGEXMATCH: [0-9] Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Return TRUE if the string contains any digit" | TRUE |
| B52 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d+") REGEXEXTRACT: \d+ Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Extract the first sequence of digits from a string" | TRUE |
| B53 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[\d,.]+") REGEXEXTRACT: [\d,.]+ Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Extract numbers that may include thousand separators or decimals" | TRUE |
| B54 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d{3}-\d{3}-\d{4}") REGEXMATCH: \d{3}-\d{3}-\d{4} Published at https://www.benlcollins.com/spreadsheets/google-sheets-regex-formulas/ — "Validate a phone number in ###-###-#### form using quantifiers" | FALSE |
| B55 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","fun|terrifying") REGEXEXTRACT: fun|terrifying Published at https://sheets-pratique.com/en/functions/regexextract — "Extract whichever of two alternative words appears first" | FALSE |
| B56 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","[A-Z]\d{2}") REGEXEXTRACT: [A-Z]\d{2} Published at https://sheets-pratique.com/en/functions/regexextract — "Extract a reference code of one uppercase letter followed by two digits" | FALSE |
| B57 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d*") REGEXEXTRACT: \d* Published at https://sheets-pratique.com/en/functions/regexextract — "Extract leading digits until a non-digit character is reached" | TRUE |
| B58 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d*$") REGEXEXTRACT: \d*$ Published at https://sheets-pratique.com/en/functions/regexextract — "Extract the digits at the end of the text" | TRUE |
| B59 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","(\d*)-?(\d*)-?(\d*)-?(\d*)") REGEXEXTRACT: (\d*)-?(\d*)-?(\d*)-?(\d*) Published at https://sheets-pratique.com/en/functions/regexextract — "Split a hyphen-separated string into separate digit groups" | TRUE |
| B60 | =REGEXMATCH("Order 4821 <b>ran 5 miles</b> john.doe@acme.com https://x.io/y (paren) *star* this Z that 01/02/2026 John, Smith","\d*-(\d*)") REGEXEXTRACT: \d*-(\d*) Published at https://sheets-pratique.com/en/functions/regexextract — "Capture the second group of digits after a hyphen" | FALSE |
| B61 | =REGEXMATCH("01/02/2026","^d{2}/d{2}/d{4}$") published verbatim: backslashes stripped by the page Exactly as printed at https://coefficient.io/google-sheets-tutorials/regexmatch-in-google-sheets-2 | FALSE |
| B62 | =REGEXMATCH("01/02/2026","^\d{2}/\d{2}/\d{4}$") the same pattern with the backslashes the author meant What a reader would have to reconstruct to make the published advice work. | TRUE |
| B63 | =REGEXMATCH(“abc”,“b”) transmission: a formula printed with typographic quotes Exactly what lands in the cell when you copy a formula from a page that curls its quotes. | #ERROR! |
| B64 | =REGEXMATCH("abc","b") transmission: the same formula with straight quotes The control. Identical in every way a person can see. | TRUE |
| B65 | =REGEXMATCH("user@domainXcom","^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$") transmission: email pattern as published, backslash gone, against a bad address The dot lost its backslash and now matches any character. domainXcom has no dot in it. | TRUE |
| B66 | =REGEXMATCH("user@domainXcom","^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$") transmission: email pattern with the backslash restored, against the same bad address What the author wrote before the page ate it. | FALSE |
| B67 | =REGEXMATCH("user@domain.com","^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$") transmission: email pattern as published, against a real address It works here, which is why nobody notices. | TRUE |
| B68 | =REGEXREPLACE("bob@acme.com","/(?!^).(?=[^@]+@)/","*") transmission: a JavaScript regex pasted into Sheets, slashes and all Verbatim from a reader comment dated 2022-07-27: "Not working… What am I missing?" | #REF! |
| B69 | =REGEXREPLACE("bob@acme.com","(?!^).(?=[^@]+@)","*") transmission: the same pattern with the JavaScript slashes removed Removing the delimiters does not save it. The lookaheads are the problem. | #REF! |
| B70 | =REGEXREPLACE("bob@acme.com","^(.)[^@]*","$1***") transmission: what he wanted, written for RE2 Keep the first character, replace the rest of the local part. No lookaround required. | b***@acme.com |
| B71 | =REGEXMATCH("abc","“abc”") curly inside the pattern: does it match the plain text What happens when a reader copies the quote marks along with the pattern into a tester. | FALSE |
| B72 | =REGEXMATCH("“abc”","“abc”") curly inside the pattern: does it match text that has the curly quotes too It is a literal character, not a delimiter. It matches itself. | TRUE |
| B73 | =REGEXMATCH("abc","abc") curly inside the pattern: the straight-quoted control The pattern the reader meant. | TRUE |
Every row above was written into a real Google Sheet and read back through the Sheets API on 2026-07-09. The case file and this log are in the repository, and the build refuses to run if they disagree.
Why this page exists
Anyone can write that lookahead does not work in Google Sheets. It is in Google's documentation, one link away, and a language model will tell you the same thing in a second.
What almost nobody does is run it. So this page is the run. Each formula above was written into a cell through the Sheets API, and the value in the third column is what came back — not what we expected, not what the documentation says, not what a model predicted.
Some rows are marked observed. Those are cases where we did not know the answer beforehand, so we measured instead of asserting. Guessing and then presenting the guess as a finding is exactly the failure mode this site was built to avoid.
If any formula here changes what it does, the log goes stale and the site refuses to build. Tell us if you find one that is wrong before we do.