Maison  >  Questions et réponses  >  le corps du texte

Supprimez les guillemets de début et de fin des chaînes soumises par l'utilisateur dans VueJS

J'ai une application VueJS qui contient des formulaires avec des données pré-remplies. L'élément textarea contient des données comme indiqué sur l'interface utilisateur

REMARQUE : (Désolé, je n'ai pas encore assez de points de représentation pour joindre une capture d'écran) :

Capture d'écran de l'élément de zone de texte de l'interface utilisateur avec des guillemets

Je ne peux pas modifier la façon dont le backend fournit les données.

Alors, existe-t-il un bon moyen de supprimer les premier et dernier guillemets d'une chaîne ? Je ne veux pas toucher au texte intérieur au cas où l'utilisateur y ajouterait des guillemets.

Le résultat attendu de

'Hello World, bienvenue dans "fooWorld!"' devrait être Hello World, bienvenue dans 'fooWorld!'

Voici un exemple concret de la façon dont j'utilise les données dans un SPA :

data() {
    return {
        entryNotes: this.post.entryNotes  //<--- this is the data I need to format
    }
}

P粉076987386P粉076987386206 Il y a quelques jours377

répondre à tous(1)je répondrai

  • P粉930534280

    P粉9305342802024-03-27 15:27:18

    Comment supprimer les guillemets d'ouverture et de fermeture à l'aide d'une expression régulière rapide ?

    data(){
        return {
            entryNotes: this.post.entryNotes.replace(/^"/,"").replace(/"$/,"")
        }
    }

    La première regex recherche le début de la chaîne (représenté par ^) puis les guillemets. La deuxième expression régulière recherche les guillemets puis la fin de la chaîne (la fin de la chaîne est représentée par $).

    Vous pouvez aussi faire ceci :

    str.match(/^"?(.+?)"?$/)[1]

    Cela trouve le début d'une chaîne (^), suivi d'un ", mais le ? le rend facultatif. Ensuite, les parenthèses capturent .+, ce qui signifie qu'elles correspondent à n'importe quoi. Le ? avant la fin de la parenthèse signifie cesser de correspondre dès que possible. Ensuite, il est indiqué de rechercher des guillemets, mais le point d'interrogation suivant indique "peut-être" et recherche ensuite la fin de la chaîne ($).

    répondre
    0
  • Annulerrépondre