2010-01-23 6 views
2

Comment puis-je remplacer/ajouter something (22) chaîne à something, en utilisant une sorte d'expression correspondant à quelque chose n'est pas une constante est toujours différente, mais la partie (entier) est toujours la même. acclamationsjavascript expression régulière pour supprimer les nombres finaux entre parenthèses

EDIT

Je vois que ce quelque chose est un peu déroutant (pour moi aussi). Voici ce que je veux dire. J'ai une chaîne - un mot. Qui contient l'expression alpha (un mot, n'importe quel mot) une seule ouverture d'espace et de paranthésis de fermeture et à l'intérieur de l'intime. Maintenant, je voudrais remplacer l'espace vide, paranthesis et entier à l'intérieur pour remplacer rien et ne laisser que la partie alpha de la chaîne.

Ex:

Java (77) 
Javascript (22) 
Car (11) 
Carpet (15) 

Après regex, il devrait ressembler à ceci:

Java 
Javascript 
Car 
Carpet 

Note, l'expression régulière est effectuée sur chaque mot séparement, je viens d'écrire quelques exemples pour rendre les choses plus claires lire et comprendre. Merci

+4

Vous devriez mieux expliquer le format attendu de 'quelque chose '. Par exemple "' quelque chose "est un seul mot alphanumérique", ou "' quelque chose "est un ou au plus deux mots commençant par un chiffre". –

+0

La façon dont votre question est formulée: 's =" something "; s = s + "Quelque chose (22)" ' – Zano

+2

Ce qu'Andrea a dit. Maintenant, une réponse comme: "en effectuant' un 'regex ou autre manipulation de chaîne" serait aussi bonne qu'une réponse que la question est. :) –

Répondre

1

Ici, il est:

var text = "Java (77) Javascript (22) Car (11) Carpet (15)"; 
text.replace(/(\w+) \(\d+\)/g,"$1"); // returns "Java Javascript Car Carpet" 
+0

Super, c'est exactement ce que je cherchais: D –

1

En supposant something comme \w -> A-Za-z0-9_, ce convertira something (22) à something

yourstring=yourstring.replace(/(\w+)\s*\(\d+\)/g,"$1") 

ou tout simplement supprimer les numéros entre parenthèses

yourstring=yourstring.replace(/\s*\(\d+\)/g, "") 
+0

ummm comme je peux le lire .. vous supposez que ma chaîne commence par s, j'ai édité la question pour rendre ma question plus indétendable (j'espère) .tnx –

+0

non, ce n'est pas seulement pour la chaîne commence avec s, \ s est un espace qui inclut l'espace pas le caractère "s" – YOU

Questions connexes