[PYTHON] IQ Bot Custom Logic: Split (extrait uniquement les noms de banque et de succursale à partir des informations de compte)

Lorsque le résultat de la lecture OCR (field_value) est" Aiue Bank Kakikuke Branch Ordinary 1234567 " Que dois-je faire si je souhaite afficher le nom de la banque et le nom de la succursale séparément en tant qu'éléments séparés d'ici?

Split peut être utilisé dans de tels cas.

Comment faire (cheet sheet)

Tout d'abord, si field_value est" Aiue Bank Kakikuke Branch Ordinary 1234567 ", Le processus pour récupérer uniquement le nom de la banque est le suivant.

Utiliser la division pour récupérer le nom de la banque


#Retirez le nom de la banque
field_value = field_value.split("Banque")[0]

Vous pouvez voir que "Aiue" pourrait être retiré de ce ↓.

Extraction du nom de la banque.jpg

De plus, lorsque field_value est" Aiue Bank Kakikuke Branch Ordinary 12345678 ", Le processus pour récupérer uniquement le nom de la branche est le suivant.

Utiliser la division pour récupérer le nom de la branche


#Extraire le nom de l'agence de la banque
field_value = field_value.split("Banque")[1]
field_value = field_value.split("Branche")[0]

Vous pouvez voir que "Kakikuke" a été éliminé par ce genre de ↓.

Extraction du nom de la branche.jpg

Explication du mécanisme

Ceci explique pourquoi le nom de la banque et le nom de la succursale peuvent être récupérés en effectuant le traitement ci-dessus.

Si vous comprenez, veuillez l'ignorer.

Divisé

Split est le processus de "division d'une chaîne avec un délimiteur dans une liste".

Vous pourriez penser, "Qu'est-ce qu'une liste?!" Ce n'est pas grave si vous pouvez le voir à peu près comme "une masse d'éléments multiples alignés". (Pour plus d'informations, recherchez "Liste Python", etc.)

Le traitement fractionné peut être effectué à la manière de «traiter target.split (séparateur)».

Le processus field_value.split (" bank ") est Cela signifie "list field_value séparé par les lettres" "bank" ".

En faisant cela, vous pouvez récupérer la liste suivante. [" Aiue "," Kakikuke Branch Ordinary 1234567 "]

Ce qui précède est une liste avec deux éléments Le premier élément est «Aiue», et le deuxième élément est «Kakikuke Branch Ordinary 1234567».

Extraire le contenu de la liste

Dans le processus ci-dessus, la chaîne de caractères a été transformée en "liste" par une journée ensoleillée. Il est maintenant temps de récupérer les éléments de cette liste.

Vous pouvez faire cela de la même manière que list [index].

En gros, l '«index» est un nombre qui indique le numéro de l'élément dans la liste, mais c'est une petite mise en garde que le début commence à zéro.

Jetons un coup d'œil au processus d'extraction du nom de la banque à nouveau.

Sur la base de l'histoire jusqu'à présent, examinons à nouveau le processus d'extraction du nom de la banque.

Utiliser la division pour récupérer le nom de la banque


#Retirez le nom de la banque
field_value = field_value.split("Banque")[0]

Cela signifie "faire une liste du contenu de field_value séparé par les lettres" "bank" ". Ensuite, retirez le premier élément de la liste (= index est zéro!) Et faites-le" field_value ". Veuillez le mettre

"Liste le contenu de field_value séparé par les lettres" "bank" "." Is` field_value.split ("bank") ",

"Et enlevez le premier élément de la liste (= index vaut zéro!)" Est [0],

"Mettez-le dans field_value" est dansfield_value =,

Chacun est applicable.

Jetons un coup d'œil au processus d'extraction du nom de la branche à nouveau.

Si vous pouvez le maintenir jusqu'à ce point, vous pourrez comprendre immédiatement le traitement des noms de succursales.

Utiliser la division pour récupérer le nom de la branche


#Extraire le nom de l'agence de la banque
field_value = field_value.split("Banque")[1]
field_value = field_value.split("Branche")[0]

La première ligne est une liste du contenu de field_value séparé par les lettres" bank ". Ensuite, retirez le deuxième élément (= index est 1!) De la liste et faites-le` field_value. Cela signifie «veuillez le mettre».

Donc, à ce stade, le contenu de field_value est`" Kakikuke branch normal 1234567 "".

Pour cette «valeur_champ», dans la deuxième ligne,

"Séparez le contenu de field_value avec les lettres" "branch" pour faire une liste. Puis retirez le premier élément de la liste (= index est zéro!) Et mettez-le dans field_value. "

Nous faisons le traitement.

Au moment de "Lister le contenu de field_value séparé par les caractères" "branche" `"

Puisqu'il existe une liste de [" Kakikuke "," Normal 1234567 "]

En extrayant le premier élément de ce type, nous avons pu extraire le nom de la branche "Kakikuke"!

Recommended Posts

IQ Bot Custom Logic: Split (extrait uniquement les noms de banque et de succursale à partir des informations de compte)
Clé de base de logique personnalisée IQ Bot
Logique personnalisée IQ Bot: application fractionnée (appliquer à la table, inclure le contrôle des erreurs)
Logique personnalisée IQ Bot: attribution de valeur fixe
Résumé du traitement lié à la logique personnalisée IQ Bot
IQ Bot Custom Logic (Python): rationalisez les exclusions dans les boucles