Comment faire pour supprimer un modèle à partir d'une chaîne à l'aide de Regex
Je veux trouver des chemins à partir d'une chaîne et de les supprimer
par exemple,string1 = "'c:\a\b\c'!MyUDF(param1, param2,..) + 'c:\a\b\c'!MyUDF(param3, param4,..)..."
, je voudrais un regex pour trouver le modèle '[some path]'!MyUDF
, et supprimer " [chemin]'.
Grâce
Modifier
par exemple, l'entrée string1 ="'c:\a\b\c'!MyUDF(param1, param2,..) + 'c:\a\b\c'!MyUDF(param3, param4,..)";
sortie attendue de "MyUDF(param1, param2,...) + MyUDF(param3, param4,...)"
où MyUDF est un nom de fonction, de sorte qu'il se compose uniquement des lettres
- Est le
!
toujours dans la chaîne? - Veuillez expliquer votre entrée et la sortie attendue avec plus de détails.
Vous devez vous connecter pour publier un commentaire.
Dans le cas où si le chemin est suivi par une ! et un autre mot, vous pouvez utiliser
MyUDF
pourrait être n'importe quelle chaîne.Bien, si le
!
est toujours dans la chaîne comme vous le suggérez, cette Regex!(.*)?\(
, vous obtiendrez ce que vous voulez. Voici une Regex 101 pour le prouver.Pour l'utiliser, vous pourriez faire quelque chose comme ceci:
La fonction que vous voulez, si vous traitez avec des chemins d'accès, est dans le Système.Chemin d'accès.
Il existe de nombreuses méthodes, mais c'est un de ses objectifs spécifiques.