2013-09-06 6 views
0

В vb6 была очень удобная функция для строковых манипуляций, которая могла бы помещать символ в определенную позицию другой строки, и я ищу расширенный эквивалент jquery.Средний эквивалент vb6 для jquery

допустим я имею эту строку:

var mystring = "__1__"; 

при применении функции:

var mystring = mid(mystring,4,"x"); 

он должен вернуть __1x_

другой пример:

var mystring = ""; 
var mystring = mid(mystring,5,"x"); 

должен вернуться: ____5

Я знаю, что для этого требуются строковые манипуляции с использованием substr, но мне было интересно, есть ли более элегантный способ? thanks

+0

Вы используете чистый Javascript, а не jQuery. Пожалуйста, проверьте следующий вопрос, на который уже был дан ответ: [JavaScript: как я могу вставить строку в определенный индекс] (http://stackoverflow.com/questions/4313841/javascript-how-can-i-insert-a -string-at-a-specific-index) – Renan

+0

Вы говорите об этой функции? http://msdn.microsoft.com/en-us/library/05e63829%28v=vs.90%29.aspx Я не знаком с введением вставки –

ответ

1

Это может быть смоделировано несколькими способами, хотя такой функции нет (сращивание является стандартным только для массивов, а не для строк).

Самый простой способ из одного выражения, о котором я знаю, - это с String.replace, когда добавление в «конец конца строки» не требуется. Разумеется, String.slice также вполне подходит, и, возможно, его легче понять.

mystring = "__1__" 
// where 3 represents the "characters to skip before inserting" 
// and 1 represents the "number of characters to replace" 
midstr = mystring.replace(/([^]{3})[^]{0,1}/, "$1x") 

Ни вышеприведенный, ни базовый срез не будут работать, как второй пример, без дополнительной логики, требующей дополнительной необходимости.

Смежные вопросы