Y at-il un moyen d'écrire un RegEx qui peut être utilisé pour trouver des fichiers avec des extensions différentes.Expression régulière pour trouver des fichiers avec diverses extensions comme-ASPX, ASCX, .js, .rpt, .xml
Répondre
Je suis sûr qu'il existe, mais la question que vous devriez vous poser est "Quel est le meilleur moyen de trouver des fichiers qui ont des extensions spécifiques?".
Les expressions régulières sont et non la meilleure réponse à chaque question.
Je suggère simplement d'obtenir une liste de tous les fichiers et de les passer dans une fonction comme IsThisFileOneIWant(fileName,extensionList)
. C'est beaucoup plus facile que d'essayer d'utiliser des expressions régulières dans votre problème.
Quelque chose comme ça devrait le faire:
function IsThisFileOneIWant(fileName,extensionList):
for each extension in extensionList:
if fileName.endsWith (extension):
return true
return false
Fait en pseudo-code, car il devrait être assez simple pour se transformer en toute autre langue.
Si vous doit avoir une expression régulière, il va ressembler à quelque chose comme (basé sur les valeurs de votre question):
"ASPX$|ASCX$|\.js$|\.rpt$|\.xml$"
mais cela dépend entièrement du moteur RE que vous souhaitez utiliser. Par exemple, voici la sortie d'une commande egrep dans mon répertoire de travail:
[email protected]:~/work$ ls -1 | egrep '\.sh$|\.c$'
backup0.sh
backup1.sh
eclipse.sh
monbt.sh
qq.c
qq.sh
xx yy.sh
Je suis d'accord avec votre point de vue. Mais dans mon cas, regex est la seule solution. S'il vous plaît aidez-moi avec ma question –
@Pax: Par souci de lisibilité, je pense que j'utiliserais cette expression régulière: ". \. (Aspx | ascx | js | rpt | xml) $". À part ça, j'appuie votre première déclaration. ;-) +1 – Tomalak
En supposant que vous avez une liste de fichiers et que vous recherchez .pdf, CHM et .doc, vous pouvez vérifier avec:
\.pdf$|\.chm$|\.doc$
Regex devrait fonctionner au-dessus si vous le vérifier des noms de fichiers simples.
Cela fonctionne dans Bash
:
find . -regex '.*\\.\\(pdf\|chm\|doc\\)'
- 1. Expression régulière pour trouver une expression régulière?
- 2. Trouver un littéral avec une expression régulière
- 3. Expression régulière pour trouver des instances de chaînes dans des noeuds XML
- 4. expression régulière pour trouver des éléments de formulaire - C#
- 5. Expression régulière alternative pour ce faire "\. (Asmx (?!/Js) | aspx | htm)"
- 6. Expression régulière pour l'hôte
- 7. Comment faire une expression régulière pour Dreamwaver trouver et remplacer?
- 8. Trouver tous les fichiers .rpt dans la solution VS
- 9. Expression régulière vs fonctions XML en PHP
- 10. Expression régulière pour les fichiers cachés sous unix
- 11. Construire une expression régulière pour trouver l'id dans un href
- 12. expression régulière pour analyser des liens html
- 13. expression régulière pour trouver [# # 1], [# # 2], [# # 125] .. dans php
- 14. expression régulière Tricky avec des URL
- 15. Expression régulière pour obtenir des fonctions pascals
- 16. Fonction pour trouver et renvoyer la correspondance d'une expression régulière
- 17. Expression régulière pour trouver <% mais exclure <% @?
- 18. Fichiers ASCX
- 19. Débutant: Expression régulière pour l'URL
- 20. expression régulière "contient" une autre expression régulière
- 21. Expression régulière Python avec [: numeric:]
- 22. python expression régulière pour retweets
- 23. Expression régulière pour trouver des avertissements et des erreurs dans la sortie du compilateur
- 24. Expression régulière
- 25. Expression régulière Visual Studio pour trouver des blocs de code commentés
- 26. lookaround expression régulière
- 27. expression régulière pour correspondre les fichiers se terminant avec la même extention
- 28. Email expression régulière
- 29. Affecter les variables avec une expression régulière
- 30. expression régulière pour mot de passe
Pouvez-vous coller un exemple de chaîne dans laquelle vous souhaitez rechercher? – ppiotrowicz