Edition: Nouveau regex correspondant à votre question éditée:
Vous devez faire correspondre ce qui est entre guillemets, après une =
, non?
@"(?<==\s*')[^']*(?=')"
devrait faire.
(?<==\s*')
affirme qu'il existe un =
, suivi éventuellement d'un espace, suivi d'un '
, juste avant notre position actuelle (lookbehind positif).
[^']*
correspond à un nombre quelconque de caractères non '
.
(?=')
Affirme que la correspondance s'arrête avant la suivante '
.
Cette expression régulière ne vérifie pas s'il y a bien une URL dans ces guillemets. Si vous voulez faire, utilisez
@"(?<==\s*')(?=(?:https?|ftp|mailto)\b)[^']*(?=')"
J'ai modifié la question pour refléter ce que je pensais être l'intention. Excuses d'avance si je me trompe. –