Funkce REGEXEXTRACT umožňuje extrahovat text z řetězce na základě zadaného regulárního výrazu. Můžete extrahovat první shodu, všechny shody nebo zachytávat skupiny z první shody.
Syntaxe:
Funkce REGEXEXTRACT extrahuje řetězce v zadaném textu, který odpovídá vzoru.
Syntaxe funkce REGEXEXTRACT 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. |
vzorek (povinné) |
Regulární výraz ("regex"), který popisuje vzor textu, který chcete extrahovat. |
return_mode |
Číslo, které určuje, jaké řetězce chcete extrahovat. Režim vrácení je ve výchozím nastavení 0. Možné hodnoty jsou: 0: Vrátí první řetězec, který odpovídá vzoru. 1: Vrátit všechny řetězce, které odpovídají vzoru, jako pole 2: Vrácení zachytávání skupin z první shody jako pole Poznámka: Zachytávání skupin jsou části vzoru regulárního výrazu obklopené závorkou "(...)". Umožňují vracet samostatné části jedné shody jednotlivě. |
case_sensitivity |
Určuje, zda shoda rozlišuje malá a velká písmena. Ve výchozím nastavení se v shodě rozlišují velká a malá písmena. Zadejte jednu z následujících možností: 0: Rozlišují se malá a velká písmena 1: Nerozlišují se malá a velká písmena |
Poznámky:
-
Při psaní vzorů regex lze použít symboly označované jako tokeny, které odpovídají různým znakům. Tady je několik jednoduchých tokenů pro referenci:
-
"[0-9]": libovolná číselná číslice
-
"[a-z]": znak v rozsahu a až z
-
".": libovolný znak
-
"a": znak "a"
-
"a*": nula nebo více "a"
-
"a+": jeden nebo více "a"
-
Všechny regulární výrazy pro tuto funkci, stejně jako REGEXTEST a REGEXREPLACE , používají PCRE2 'flavor' regex.
-
FUNKCE REGEXEXTRACT vždy vrací textové hodnoty. Tyto výsledky můžete převést zpět na číslo pomocí funkce VALUE.
Příklady
Zkopírujte ukázková data a vložte je do buňky A1 nového excelového listu. Pokud potřebujete, můžete upravit šířky sloupců tak, aby se zobrazila všechna data.
Extrahování názvů na základě velkých písmen se vzorem [A-Z][a-z]+"
Data |
DylanWilliams |
Vzorce |
=REGEXTRACT(A2;"[A-Z][a-z]+") |
=REGEXEXTRACT(A2;"[A-Z][a-z]+";1) |
Následující obrázek ukazuje výsledky.
Extrahovat telefonní čísla na základě jejich struktury pomocí vzoru [0-9()]+ [0-9-]+"
Data |
Sonia Rees (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 Rees (666) 555-1872 |
Vzorce |
=REGEXTRACT(A2;"[0-9()]+ [0-9-]+";1) |
Následující obrázek znázorňuje výsledek.