Показать сообщение отдельно
  #1 (permalink)  
Старый 01.03.2015, 21:05
Новичок на форуме
Отправить личное сообщение для danies Посмотреть профиль Найти все сообщения от danies
 
Регистрация: 01.03.2015
Сообщений: 9

Поиск слов по регулярному выражению в тексте
Нужно найти в тексте все ссылки, находящиеся в таком положении:
require $_SERVER["DOCUMENT_ROOT"].'/cms/class/main.class.php';

То есть в случае выше скрипт должен найти и вывести
/cms/class/main.class.php




Есть такой скрипт:

function drevo() {
	
	text=$("#code").val();

	text=text.replace(/[\s\S]*?require \$_SERVER\[\"DOCUMENT_ROOT\"\]\.\'([^;']*)\';[\s\S]*/ig,'$1');

	alert(text);

}


Он выводит только первое совпадение по слову, но это совсем кривой способ

Есть еще такой:
function drevo() {
	
	rv=/require \$_SERVER\[\"DOCUMENT_ROOT\"\]\.(\'|\")[\s\S]*(\'|\");/i;

	text=$("#code").val();

	alert(rv.exec(text));
}


Однако он выводит строку целиком, то есть
require $_SERVER["DOCUMENT_ROOT"].'/cms/class/main.class.php';


Если приписать
a=rv.exec(text);
p=a.split(/'/);// или p=a.split("'");

Скрипт вообще не работает.
Ответить с цитированием