Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помощь с регуляркой (https://javascript.ru/forum/misc/69713-pomoshh-s-regulyarkojj.html)

ShutTap 14.07.2017 09:58

Помощь с регуляркой
 
Здравствуйте.
Подскажите пожалуйста с регуляркой
есть строка из разных символов, повторяющихся
нужно разделить строку на массив по определенному символу, но только так, что 1-й элемент - всё ДО этого символа, а 2-й - всё ПОСЛЕ
str.split(/\\-+?/);

(тут по тире делим)

рони 14.07.2017 10:36

ShutTap,
https://javascript.ru/forum/jquery/6...tml#post457159

ShutTap 14.07.2017 10:42

там заменяются по всем символам, а мне нужно разделить по первому...
не могу из того переделать в своё, потому и нужна помощь в составлении...

рони 14.07.2017 10:47

Цитата:

Сообщение от ShutTap
там заменяются по всем символам

там пример как сделать регулярное выражение, что именно нужно сделать известно только вам.
Цитата:

Сообщение от ShutTap
нужна помощь в составлении

пишите примеры, того что хотите сделать.

ShutTap 14.07.2017 10:53

есть строка из разных символов, повторяющихся
допустим лоывра- 6ып ылво -ыфвопт -
нужно разделить строку на массив по определенному символу, но только так, что 1-й элемент - всё ДО этого символа, а 2-й - всё ПОСЛЕ
к примеру по "-", то есть первый элемент это лоывра, а второй 6ып ылво -ыфвопт -

рони 14.07.2017 10:54

ShutTap,

function escapeRegExp(string){
  return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
}
var a = "-";
var reg = new RegExp(escapeRegExp(a)+"+");
alert(reg);
var str = "hhhh----ppppp"
alert(str.split(reg));

рони 14.07.2017 10:55

Цитата:

Сообщение от ShutTap
есть строка

ок ... :write:

ShutTap 14.07.2017 10:58

не совсем так, если "hhhh----ppppp", то должно быть hhhh и ---ppppp, а вывело hhhh и ppppp

рони 14.07.2017 11:03

ShutTap,
var a = "-";

var str = "лоывра- 6ып ылво -ыфвопт -";
var i = str.indexOf(a)
alert([str.substr(0,i),str.substr(++i)]);

ShutTap 14.07.2017 11:20

понятно, спасибо)


Часовой пояс GMT +3, время: 16:38.