Funkce REGEXEXTRACT umožňuje extrahovat text z řetězce na základě zadaného regulárního výrazu. Z první shody můžete extrahovat první shodu, všechny shody nebo zachytávající skupiny.
Syntaxe
Funkce REGEXEXTRAHOVAT extrahuje řetězce v zadaném textu , které odpovídají vzoru.
Syntaxe funkce REGEXEXTRAHOVAT je:
REGEXEXTRACT(text, vzor, [return_mode], [case_sensitivity])
| Argument | Popis |
|---|---|
|
text (povinné) |
Text nebo odkaz na buňku obsahující text, ze kterého chcete extrahovat řetězce. |
|
vzor (povinné) |
Regulární výraz ("regulární výraz"), který popisuje vzor textu, který chcete extrahovat. |
| return_mode | Jedná se o číslo, které určuje, jaké řetězce chcete extrahovat. Ve výchozím nastavení je návratový režim 0. Možné hodnoty jsou: 0: Vrácení prvního řetězce odpovídajícího vzoru Obr. 1: Vrátí všechny řetězce, které odpovídají vzoru, jako matici Obr. 2: Vrácení zachytávajících skupin z prvního zápasu jako pole Poznámka: Zachytávající skupiny jsou součástí vzoru regulárního výrazu uzavřeného do závorek "(...)". Umožňují vám jednotlivě vracet samostatné části jednoho zápasu. |
| case_sensitivity | Určuje, jestli se při shodě rozlišují velká a malá písmena. Ve výchozím nastavení se při shodě rozlišují velká a malá písmena. Zadejte jednu z následujících možností: 0: Rozlišování malých a velkých písmen Obr. 1: Nerozlišují se malá a velká písmena |
Poznámka
Nejjednodušším vzorem je literál, který chcete porovnávat. Například pro porovnání textu "Match Me" můžete použít vzor "Match Me".
Lze také použít symboly zvané "tokeny", které odpovídají různým znakům. Tady je několik jednoduchých referenčních tokenů:
"[0-9]": libovolná číslice
"[a-z]": znak v rozsahu od A do Z
".": libovolný znak
"A": Znak "A"
"a*": nula nebo více "a"
"A+": jedno nebo více písmen "a"
Všechny regulární výrazy pro tuto funkci, stejně jako REGEXTEST a REGEXPLACE, používají "příchuť" regulárního výrazu PCRE2.
Funkce REGEXEXTRAHOVAT vždy vrací textové hodnoty. Tyto výsledky můžete převést zpátky na číslo pomocí funkce HODNOTA.
Příklady
Zkopírujte příkladová data a vložte je do buňky A1 nového Excel listu. Pokud potřebujete, můžete přizpůsobit šířky sloupců a zobrazit si všechna data.
Příklad 1
Extrahování jmen na základě velkých písmen se vzorem "[A-Z][a-z]+"
| Data |
|---|
| DylanWilliams |
| Vzorce |
| =REGEXEXTRACT(A2;"[A-Z][A-z]+") |
| =REGEXEXTRACT(A2;"[A-Z][A-z]+";1) |
Následující obrázek ukazuje výsledky.
Příklad 2
Extrahujte telefonní čísla na základě jejich struktury se vzorem "[0-9()]+ [0-9-]+"
| Data |
|---|
| Sonia Reesová (378) 555-4195 Angel Brown (878) 555-8622 Blake Martin (437) 555-8987 William Kirby (619) 555-4212 Avery Smith (579) 555-5658 Parker Jones (346) 555-0925 Liam Small (405) 555-0887 Hollie Reesová (666) 555-1872 |
| Vzorce |
| =REGEXEXTRACT(A2;"[0-9()]+ [0-9-]+";1) |
Následující obrázek ukazuje výsledek.