Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите составить регулярное выражение (https://javascript.ru/forum/misc/14205-pomogite-sostavit-regulyarnoe-vyrazhenie.html)

ksa 06.01.2011 14:04

MCTrane, так тебе нужно убрать что-то от * (звезды) до JOOM? Или опять не то?

MCTrane 06.01.2011 14:05

Цитата:

Сообщение от ksa (Сообщение 86492)
MCTrane, так тебе нужно убрать что-то от * (звезды) до JOOM? Или опять не то?

Да, с учётом того что я знаю то что до звезды.

ksa 06.01.2011 14:07

MCTrane, тогда продолжай думать над формулировкой задачи... :D

MCTrane 06.01.2011 14:08

ksa, Ну ты же всё понял...

ksa 06.01.2011 14:12

MCTrane, дело не в том что понял я... Дело в том, что таки нужно тебе. ;)

MCTrane 06.01.2011 14:22

Ну мне надо так:
Есть строка
JOOMtest1*test2JOOMtest3*test4JOOMtest5*test6JOOM
В функцию поступил аргумент "test1", и эта функция должна вырезать тот участок строки где есть "test1", т.е. должно получиться после вызова такой функции так:
JOOMtest3*test4JOOMtest5*test6JOOM
Ещё один пример:
Строка:
JOOMtest1*test2JOOMtest3*test4JOOMtest1*test2JOOMt est5*test6JOOM
Аргумент: test1
Должно получиться: JOOMtest3*test4JOOMtest5*test6JOOM

ksa 06.01.2011 14:31

Цитата:

Сообщение от Aetae
Самый первый вариант рабочий.

Таки он прав. :)

<!DOCTYPE html>
<html>
<head>
<title></title>
<script> 
function Go(Str) {
	var beg = 'JOOM'+Str
	var end = "JOOM";
	var test=new RegExp(beg+'.+?'+end, "g")
	alert('JOOMtest1*test2JOOMtest3*test4JOOMtest1*test2JOOMt est5*test6JOOM'.replace(test,end))
}
</script> 
</head>
<body onload='Go("test1")'>
</body>
</html>

MCTrane 06.01.2011 14:35

ksa,Aetae Огромное спасибо за помощь.

x-yuri 06.01.2011 21:59

MCTrane, а можешь рассказать, что это за строка и что ты вообще делаешь?

Aetae 07.01.2011 00:57

Цитата:

Сообщение от x-yuri (Сообщение 86541)
MCTrane, а можешь рассказать, что это за строка и что ты вообще делаешь?

Это было бы не интересно, ибо гарантированно он делает что-то через тоннель, а в таком случае пришлось бы его сразу посылать rtfm и не маяться фигнёй.)


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