2010-10-21 6 views
0

var aJavaScript manipuler problème de chaîne

var a = "ACdA(a = %b, ccc= 2r2)"; 

var b

var b = "\ewfsd\ss.jpg" 

sorties attendues:

var c = "ACdA(a = %b, ccc= 2r2, b_holder = \ewfsd\ss.jpg)" 

Il ajoute la chaîne b à la fin de la chaîne a, c'est tout! Mais attention au ")"

"b_holder" est une chaîne codée en dur, elle est absolument la même dans tous les cas, ne sera pas modifiée.

Merci à tous!

+1

Il vous manque des guillemets autour de vos chaînes dans la déclaration. Postez votre code actuel. Qu'est-ce que la méthode ACdA? Code postal pour cela aussi. Honnêtement, je ne sais pas ce que je regarde ... – tpow

+1

Remarquable! Vous n'avez pas fourni une seule ligne de code, et juste ** le jour où ma boule de cristal est dans le magasin ... quelle coïncidence. –

+0

Quelle est la question ou le problème ici? –

Répondre

0

Vous devez faire deux choses:

  1. Concatenate ", b_holder = " à var b et
  2. Remplacer ")" dans var a avec le résultat de la concaténation.

Puisqu'il s'agit de devoirs, je vous laisse décider des méthodes à utiliser. Bonne chance! Astuce: vous pouvez stocker le résultat de la concaténation dans l'étape (1) dans une autre variable, ou vous pouvez le faire en une seule ligne.

Modifier: Vous devez également concaténer le ")" sur la fin. Alors peut-être trois choses. :-)

0

Vous encore ne présentent pas de code pour ce que vous faites avec a et b pour produire c; vous montrez simplement une affectation simple de la valeur attendue (désirée).

Vous avez un problème, mais avec la valeur que vous affectez à var b - parce que la barre oblique inverse \ est une évasion. Si vous voulez une barre oblique inverse dans la chaîne réelle que vous devez, donc votre mission serait

var b = "\\ewfsd\\ss.jpg"; 
0
var a = "ACdA(a = %b, ccc= 2r2)"; 
var b = "\\ewfsd\\ss.jpg"; // need to escape the backslash for RegExp replace 
var re = /\)$/; 
var c = a.replace(re, ", b_holder = "+b+"\)"); 
Questions connexes