comment diviser une chaîne par un mot entre guillemets en évitant les guillemets échappés

Recherche exacte

Comment diviser la chaîne ci-dessous

var test = 'sample "test""test2"   "test3\\"" sample2"last';

dans un tableau en ['sample','"test"','"test2"','"test3\\""','sample2"last']utilisant javascript regx ?

Quelques exemples d'entrées et de sorties attendues sont ajoutés ci-dessous.

sample1 : ' test1 "test2" test3 "test four\\"" test" d'
output [' test1','"test2"','test3','"test four\\""','test" d']

sample2 : ' test1 test2'
output [' test1 test2']

sample3 : ' test1 "sub test2'
output [' test1 "sub test2']

sample4 : ' test1 "sub test2"'
output [' test1 ','"sub test2"']

sample5 : ' "test1" "sub test2" here'
output ['"test1"','"sub test2"', 'here']
anubhava

Cette regex devrait fonctionner pour vous pour le fractionnement :

/\s*"[^"\\]*(?:\\.[^"\\]*)*"\s*|.+?(?="[^"\\]*(?:\\.[^"\\]*)*"|$)/g

Code:

var input = [` test1 "test2" test3 "test four\\"" test" d`, ` test1 test2`, ` test1 "sub test2`, `' test1 "sub test2"`, ` "test1" "sub test2" here`];

const re = /\s*"[^"\\]*(?:\\.[^"\\]*)*"\s*|.+?(?="[^"\\]*(?:\\.[^"\\]*)*"|$)/g;

input.forEach(el => {
  console.log('<<', el, '>>');
  var arr = el.match(re);
  arr.forEach(i => console.log(i));
});

Détails RegEx :

  • "[^"\\]*(?:\\.[^"\\]*)*": correspond à une chaîne entre guillemets en ignorant les guillemets échappés
  • |: OU ALORS
  • .+?(?="[^"\\]*(?:\\.[^"\\]*)*"|$): Correspond à 1+ tous les caractères qui doivent être suivis d'une chaîne entre guillemets ou d'une fin de ligne.

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

Comment puis-je diviser une chaîne séparée par des virgules, en ignorant les virgules entre guillemets et parenthèses?

Comment diviser une chaîne par des espaces en excluant ceux entre guillemets en Python?

comment diviser une chaîne par espace mais échapper des espaces entre guillemets (en java)?

Comment diviser une chaîne par une chaîne sauf lorsque la chaîne est entre guillemets en python?

Remplacer tous les guillemets d'une chaîne par des guillemets échappés?

Diviser / diviser une chaîne entre guillemets

Diviser la chaîne par une virgule mais ignorer les virgules entre crochets ou entre guillemets

Comment diviser une chaîne délimitée par un tube (qui n'est pas entre guillemets

Faire correspondre et remplacer un mot qui n'est pas entre guillemets (la chaîne contient des guillemets échappés)

supprimer les guillemets simples dans la liste, séparer la chaîne en évitant les guillemets

Diviser la chaîne en un tableau par une virgule, sauf si la virgule est entre guillemets

Python: placez chaque mot d'une chaîne séparée par des espaces entre guillemets

Comment remplacer la chaîne de guillemets simples par un littéral si elle contient des guillemets simples échappés?

Comment manipuler une chaîne avec des guillemets échappés

Comment supprimer les guillemets échappés dans une chaîne dans Common Lisp?

Java: fractionner une chaîne séparée par des virgules mais en ignorant les virgules entre guillemets

Fractionner une chaîne par une virgule en ignorant les autres virgules (non entre guillemets)

Java Regex pour faire correspondre une chaîne entre guillemets avec des guillemets échappés

Fractionner une chaîne par valeur entre guillemets en Java

Diviser la chaîne sur les espaces et les guillemets, en gardant intactes les sous-chaînes entre guillemets

diviser la chaîne par des virgules mais ignorer les virgules entre guillemets simples et créer un dictionnaire après la séparation de la chaîne en python

Comment diviser les chaînes entre guillemets dans Bash?

Comment remplacer les virgules par un point uniquement dans la sous-chaîne entre guillemets?

Divisez une chaîne par des virgules mais ignorez les virgules entre guillemets en utilisant Javascript

Comment remplacer une chaîne entre guillemets en javascript?

Comment inclure une variable entre guillemets doubles échappés?

Fractionner une chaîne entre guillemets en un tableau

Comment diviser mais ignorer les séparateurs dans les chaînes entre guillemets dans R?

Comment puis-je tronquer une chaîne de texte entre guillemets et conserver les guillemets?

TOP liste

  1. 1

    comment afficher un bouton au-dessus d'un autre élément ?

  2. 2

    impossible d'obtenir l'image d'arrière-plan en plein écran dans reactjs

  3. 3

    Je continue à obtenir l'objet 'WSGIRequest' n'a pas d'attribut 'Get' sur django

  4. 4

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  5. 5

    Conversion double en BigDecimal en Java

  6. 6

    Impossible d'accéder à la vue personnalisée pendant le test de l'interface utilisateur dans XCode

  7. 7

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  8. 8

    Passer la taille d'un tableau 2D à une fonction ?

  9. 9

    Comment obtenir l'intégration contextuelle d'une phrase dans une phrase à l'aide de BERT ?

  10. 10

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  11. 11

    CSS: before ne fonctionne pas sur certains éléments,: after fonctionne très bien

  12. 12

    Comment créer un bot à compte à rebours dans Discord en utilisant Python

  13. 13

    Comment ajouter une entrée à une table de base de données pour une combinaison de deux tables

  14. 14

    Exporter la table de l'arborescence vers CSV avec mise en forme

  15. 15

    Comment activer le message Pylint "too-many-locals" dans VS Code?

  16. 16

    Créer un système Buzzer à l'aide de python

  17. 17

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  18. 18

    Empêcher l'allocation de mémoire dans la génération de combinaison récursive

  19. 19

    Déplacement des moindres carrés d'ajustement pour les déplacements de points ayant des problèmes

  20. 20

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  21. 21

    Microsoft.WebApplication.targets

chaudétiquette

Archive