Analyse de l'aide nécessaireNewbie analyse de la question. Comment puis-je obtenir la date et le texte après "Charge" dans la colonne Description du jeu de données Aug_7.pdf (capture d'écran ci-dessous et pdf ci-joint) utilisés dans l'exemple d'importation PDF du JMP 15 Training Starter? Je vous remercie!

Re: Analyse de l'aide nécessaireLa date que vous pouvez obtenir en recodant avec "dernier mot".
Pour séparer la charge: vous pouvez utiliser regex, mais vous pouvez aussi faire quelque chose comme ceci:
1) Recodez les chaînes "à la charge de" et "à la charge de" en un caractère qui ne figure pas dans le texte. Dis un tilde. "~"
2) Utilisez maintenant du texte dans les colonnes avec le tilde comme séparateur.
Si vous avez suivi les étapes 1 et 2 ci-dessus, vous pouvez alors recoder la colonne résultante (appelez-la col X) avec "dernier mot" pour obtenir la date dans sa propre colonne, puis recodifier la col X à nouveau avec "tout sauf le dernier" pour supprimer la date.
Encore une fois, vous pouvez le faire avec regex ... mais il est assez rapide de pointer-cliquer.
-Brady
Re: Analyse de l'aide nécessaireDans tous les cas, sauf les plus simples, j'utiliserais Regex pour extraire des informations d'un texte libre. Par exemple,
Regex(
:Name( "Description (A)ttempted, (C)ompleted, (F)elony, (M)isdemeanor" ),
"\d{1,2}/\d{1,2}/\d{4}"
)
obtiendrez les dates. Et
Regex(
:Name( "Description (A)ttempted, (C)ompleted, (F)elony, (M)isdemeanor" ),
"(Charge|chrg) of ([^,]+)",
"\2",
Ignore Case
)
vous donnera tout après Charge ou chrg jusqu'à la prochaine virgule, quel que soit le cas.
Si vous n'avez jamais utilisé d'expressions régulières, la courbe d'apprentissage est un peu raide et le langage semble ésotérique à moins que vous n'ayez fait de la programmation UNIX. C'est incroyablement puissant pour ces types de situations, cependant. Craige Hales a construit un constructeur de regex interactif phénoménal dans le cadre de l'explorateur de texte. Vous pouvez y chercher d'autres exemples. Mon tutoriel préféré est ici . Si vous ne voulez pas emprunter cette voie, et je peux comprendre pourquoi, il y a quelques techniciens qui peuvent vous aider.
Re: Analyse de l'aide nécessaireJe suis d'accord avec Don. Regex est une de ces choses comme JSL ... douloureux à apprendre mais incroyablement puissant.
La regex est quelque chose que je me promets toujours d'apprendre, puis de ne pas apprendre, puis de me maudire (plusieurs fois par an) pour ne pas avoir appris.
Re: Analyse de l'aide nécessaireSi vous souhaitez obtenir du texte sans charge ni chrg, vous pouvez ajouter un? qui est un quantificateur 0 ou 1. Ou vous voudrez peut-être analyser Vicitim similaire à ce que Don a montré.
<SPAN class="token string">"(Charge|chrg)? of ([^,]+)"</SPAN>
j'utilise https://www.debuggex.com/ Protyper mes experssions régulières. Il vous permet de coller des données de test et d’essayer différents scripts regex sur des données de test pour voir ce que vous obtenez. Il y a une très bonne feuille de cheet que je trouve utile.
Re: Analyse de l'aide nécessaireEn passant, je ne suis pas à l'aise avec l'utilisation de ce PDF dans une démonstration publique. Je sais que les données proviennent de registres publics, mais elles ont des noms, des âges et des adresses qui sont réels et qui viennent d’ici à Cary. Il est possible que certains d’entre eux aient un lien avec SAS. Utiliser des données de ce type en public est un peu déplacé.
J'ai parlé à @brady_brady et il va l'enlever du Starter Training. Pour ceux qui ont déjà téléchargé Training Starter, je recommande de ne pas l'utiliser en public.
Merci.
Re: Analyse de l'aide nécessaireBon point Jeff. Nous devrions utiliser des données sans noms ni adresses.