JavaScript манипулирует строкой - PullRequest
0 голосов
/ 22 октября 2010

var a

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

var b

var b = "\ewfsd\ss.jpg"

Ожидаемые результаты:

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

Добавляет строку b в конец строки a, этоЭто!Но будьте осторожны с ")"

"b_holder" это жестко закодированная строка, она абсолютно одинакова во всех случаях, не будет изменена.

Спасибо всем!

Ответы [ 3 ]

0 голосов
/ 22 октября 2010

Вы все еще не показывает никакого кода для того, что вы делаете с a и b для производства c; вы просто показываете простое присвоение ожидаемого (желаемого) значения.

У вас проблема, однако со значением, которое вы присваиваете var b - потому что обратный слеш \ является escape . Если вам нужна обратная косая черта в текущей строке, вам нужно удвоить ее, поэтому ваше назначение будет

var b = "\\ewfsd\\ss.jpg";
0 голосов
/ 22 октября 2010
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+"\)");
0 голосов
/ 22 октября 2010

Вам нужно сделать две вещи:

  1. Объединить ", b_holder = " в переменную b и
  2. Заменить ")" в переменной a с результатомконкатенации.

Так как это домашняя работа, я оставлю вам решать, какие методы использовать.Удачи!

Подсказка: вы можете сохранить результат конкатенации на шаге (1) в другой переменной или сделать все в одной строке.

Редактировать: Вам также необходимосоединить ")" обратно в конец.Так что, может быть, три вещи.: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...