J'essaye de changer le corps de réponse HTTP avec Charles Proxy en utilisant rewrite tool/regex? La réponse est un JSON.
Donc, une partie du corps JSON de réponse renvoyé est:
"unavailablePosts": ["AA", "BB"],
et ce que je veux c'est:
"unavailablePosts": "XXX",
J'essaye de mettre en place la réécriture de Charles comme ceci:
Donc, la regex est comme:
"unavailablePosts": \[(.*)\],
Mais ... (en posant cette question), cela ne fonctionne pas, c’est-à-dire que rien n’a changé dans le corps de la réponse.
Je crois qu'il y a des sauts de ligne entre les valeurs et pour les faire correspondre, vous devez ajouter \s*
(zéro espace ou plus) autour de :
et utiliser [\s\S]*?
(tous les caractères 0+ mais aussi peu que possible car *?
est un quantificateur paresseux) pour correspondre la sous-chaîne entre [
et ],
:
"unavailablePosts"\s*:\s*\[([\s\S]*?)\],
J'ai eu le même problème. Dans ce cas, l'expression rationnelle est ("unavailablePosts":)"[\s\S]*?"
La valeur de remplacement est $1"anything"