Est-ce que quelqu'un sait où je peux trouver la documentation décrivant les capacités d'analyse des expressions régulières des champs de recherche macOS?
Ce que je veux dire, c'est que j'aimerais en apprendre davantage sur les règles de syntaxe regex autorisées et analysées par le champ de recherche. Par exemple, ce que je ne savais pas jusqu'à aujourd'hui, c'est que dans Aperçu macOS (ou toute autre application avec un champ de recherche standard, je suppose), nous pouvons utiliser une entrée comme celle-ci :
"\s" AND "an" AND "\s"
Cela fonctionne et suggère que les champs de recherche interprètent plus d'expressions régulières que ce que nous savons, et c'est ce que je veux lire/découvrir. L'exemple ci-dessus recherche "an" avec un caractère espace blanc avant et après \s
dans un document ouvert.
J'aimerais en savoir plus sur ces règles de regroupement et les caractères regex d'enrobage/échappement pour qu'ils soient correctement analysés. Ce format d'entrée s'applique-t-il également aux champs de recherche systemwide de n'importe quelle application?
Je ne trouve aucune documentation décrivant ces fonctionnalités et j'ai trouvé seulement ceci sur la bibliothèque de developer.apple.com à la place.
Vous pouvez voir ci-dessous un exemple du comportement de recherche par défaut pour le mot "an" dans un document PDF, qui montre toutes les occurrences de "an" dans les résultats, que vous mettiez ou non un espace avant le mot "an", donc votre entrée est " an "
Lorsque nous mettons "\s" AND "an" AND "\s"
dans le champ de recherche, nous obtenons le résultat de recherche souhaité
Cela fait une énorme différence pour les recherches contenant des mots communs!
En bref: J'aimerais en savoir plus sur la fonctionnalité que vous voyez ci-dessus. Où puis-je trouver une quelconque documentation (officielle) à ce sujet?
Les réponses fournies (jusqu'à présent) ne répondent pas à ma question, merci pour elles cependant - rassembler plus d'informations connexes est bénéfique.
0 votes
Ce lien vous sera-t-il utile ?
0 votes
Salut Denis, merci pour le lien - mais c'est plus ou moins le manuel de regex posix ;-) et si vous regardez attentivement mon exemple ci-dessus - ce n'est pas du regex posix - puisque la syntaxe commune ne fonctionne pas et c'est pourquoi la question est posée ici. Je ne suis pas sûr que des mots comme AND OR soient dans le regex posix (corrigez-moi si je me trompe) de toute façon. Cela étant dit, je ne trouve pas les spécificités de la syntaxe pour ce type de champ de recherche. C'est (probablement) une instance de developer.apple.com/reference/appkit/nssearchfield#overview (devinez) mais je ne peux pas trouver les détails spécifiques du regex.
0 votes
Êtes-vous sûr que nous parlons de regex ici? J'ai essayé votre exemple dans Aperçu, ainsi que quelques variations de regex, mais aucune d'entre elles ne semblait se comporter comme une expression régulière propre. Cela ne répond pas à votre question, mais pourrait aider à chercher au bon endroit.
0 votes
Oui, tu as raison - et c'est ce que je veux savoir! Où se trouve un document décrivant quel type de syntaxe est analysé et comment ? Ce n'est pas regex posix, mais c'est assez semblable à du regex, alors qu'est-ce que c'est ? :)
0 votes
En fait, votre exemple
"\s" ET "an" ET "\s"
ci-dessus est incorrect. Du moins dans ma version de Preview (macOS 10.15),"\s" ET "an" ET "\s"
et simplement la recherche de"an"
(avec des guillemets) donnent exactement le même résultat en ce qui concerne la recherche du mot "an" (entouré d'espaces). Ce que l'inclusion de"ET \s"
fait, c'est d'ajouter l'exigence supplémentaire qu'un "S" (à nouveau avec des espaces avant et après) devrait aussi être présent quelque part dans le document, mais sans restriction quant à où. Le backslash ("\") semble être complètement ignoré.0 votes
Voici une question pratique avec des réponses générales à votre problème. Comment puis-je trouver une chaîne exacte dans le contenu des fichiers à travers de nombreux dossiers en ligne de commande sur macOS?