REGEX.EXTREURE
La funció REGEX.EXTREURE dona les correspondències o grups de captura en una correspondència d’una expressió regular específica en una cadena d’origen.
REGEX.EXTREURE(cadena-origen; cadena-expressió-regular; aparició-correspondència; captura-grup-aparició)
cadena-origen: El valor de cadena on s’ha de buscar la correspondència.
cadena-expressió-regular: Un valor de cadena que representa una expressió regular i que es fa servir per buscar la coincidència amb cadena-origen.
correspondència-aparició: Un enter opcional que indica quina correspondència s’ha de calcular, en cas que hi hagi diverses correspondències. S’accepten els enters negatius i permeten accedir a les correspondències cap enrere; és a dir, -1 és l’última correspondència i així successivament. Si s’especifica 0, es torna una matriu de totes les correspondències. Si s’omet, es torna la primera correspondència.
captura-grup-aparició: Un enter opcional que indica quin grup de captura dins d’una correspondència s’ha de tornar en cas que a l’expressió regular hi hagi grups de captura. No s'accepten els valors negatius. Si es retorna 0, es torna una matriu de tots els grups de captura. Si s’omet, es retorna la primera correspondència.
Notes
Cal que cadena-expressió-regular s’ajusti als estàndards de l’ICU.
Exemples |
---|
Si tens dades que no encaixen fàcilment a les files i les columnes d'un full de càlcul, pots utilitzar la funció REGEX.EXTREURE per simplificar-les. A la següent taula, per exemple, les dades estan estructurades, però pot resultar difícil separar de manera manual les dades en diferents cel·les per revisar-les. |
A | |
---|---|
1 | Opinions d'usuaris |
2 | Correu electrònic: jvalls@icloud.com Nom: Júlia Valls Data: 17/5/2021 |
3 | Correu electrònic: xrovira@icloud.com Nom: Xavi Rovira Data: 2/6/2021 |
Per solucionar-ho, pot afegir més columnes a la taula per al nom, el correu electrònic, la puntuació i la data i, després, utilitzar la funció REGEX.EXTREURE per buscar les dades que vols i que la funció les retorni a les cel·les. Per exemple, podries introduir la següent fórmula perquè doni un nom: En aquesta fórmula, s'utilitzen els següents arguments.
Aquesta fórmula es pot repetir per a cada fila de dades perquè doni el nom de cada una de les persones que han respost a l'enquesta modificant cadena-origen per fer coincidir les altres cel·les que contenen informació sobre les opinions dels usuaris. |
Per solucionar-ho, pot afegir més columnes a la taula per al nom, el correu electrònic, la puntuació i la data i, després, utilitzar la funció REGEX.EXTREURE per buscar les dades que vols i que la funció les retorni a les cel·les. Per exemple, podries introduir la següent fórmula: En aquesta fórmula, s'utilitzen els següents arguments.
|
Reorganitzar dades d'una llista amb correspondència-aparició |
---|
A vegades és possible que tinguis dades com la següent taula (titulada Proveïdors), que agrupa valors en una cel·la: |
Proveïdor | Ítem |
---|---|
A | Llenties, Cigrons, Llima |
B | Pomes, Taronges, Llimones |
C | Quinoa, Arròs, Chia |
Per separar els valors en funció de la botiga i la classificació, primer pots crear una taula nova, com la següent: |
A | B | C | D | |
---|---|---|---|---|
1 | Classificació | A | B | C |
2 | 1 | |||
3 | 2 | |||
4 | 3 |
Perquè la funció doni "Llenties", que és l'ítem amb millor classificació per al Proveïdor A, pots utilitzar una formulació com aquesta a la cel·la B2 de la taula nova perquè doni "Llenties", l'ítem amb millor classificació per al Proveïdor A: En aquesta fórmula, s'utilitzen els següents arguments.
|
La fórmula anterior es pot modificar fàcilment per completar la taula per altres proveïdors i altres ítems.
|
Exemples addicionals |
---|
A la cel·la A1, escriu "marina@exemple.com joan@exemple.cat miquel@exemple.es". =REGEX.EXTREURE(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})") dona "marina@exemple.com". =REGEX.EXTREURE(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; 2) dona “joan@exemple.cat”. =REGEX.EXTREURE(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; -1) dona "miquelexemple.es". =REGEX.EXTREURE(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; 1; 1) dona "marina". =REGEX.EXTREURE(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; 2; 2) dona "exemple.cat". |