Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Регулярные выражения (https://javascript.ru/forum/misc/58445-regulyarnye-vyrazheniya.html)

ksa 24.09.2015 13:02

Мои 5коп... :)

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<!--
<script src='http://code.jquery.com/jquery-latest.js'></script>
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
window.onload=function(){
	var txt=document.getElementById('test').innerHTML;
	alert(txt.match(/title="[^"]*"/g)[0].split('"')[1]);
};
</script>
</head>
<body>
<div id='test'>
	<a class="a-link-normal s-access-detail-page a-text-normal" title="Leitz 24230095 Stehsammler, A4, Hartpappe, schwarz" href="http://www.amazon.de/Leitz-24230095-Stehsammler-Hartpappe schwarz/dp/B0007OEHFS/ref=sr_1_1?ie=UTF8&amp;qid=1442901446&amp;sr=8-1&amp;keywords=Leitz+24230095">
		<h2 class="a-size-medium a-color-null s-inline s-access-title a-text-normal">
			Leitz 24230095 Stehsammler, A4, Hartpappe, schwarz
		</h2>
	</a>
</div>
</body>
</html>

рони 24.09.2015 15:21

ksa,
а вдруг кавычки одинарные будут? :)

ksa 24.09.2015 15:25

рони, а вдруг нет... :D

sortarray 24.09.2015 16:48

Цитата:

Сообщение от рони
а вдруг кавычки одинарные будут?

Цитата:

Сообщение от ksa
рони, а вдруг нет...

Так всегда надо обрабатывать оба случая.

sortarray 24.09.2015 16:51

Цитата:

Сообщение от ksa
рони, а вдруг нет...

В твоем случае
title=['"][^"']*['"]/g


Это что трудно? Кроме того, ты не обработал случаи пробельных символов и тд, не выделил границы слова, полностью лень разбираться.

ksa 24.09.2015 16:57

Цитата:

Сообщение от sortarray
полностью лень разбираться

И мне то же. :D
Мой пример сделан исключительно под тестовые данные ТСа и не более того. Что с ни делать пусть каждый решает сам. ;)

sortarray 24.09.2015 17:02

ksa,
Вот так примерно твоя регулярка должна выглядеть
var s = "bala foo='1'blafoo='2' bla foo=\"3\"bla" 
console.log(s.match(/\bfoo\s*=\s*["'][^'"]*["']/g)) 
//>>>[ 'foo=\'1\'', 'foo="3"' ]

ksa 25.09.2015 08:27

Цитата:

Сообщение от sortarray
Вот так примерно твоя регулярка должна выглядеть

Ты спец - тебе видней...

Но бывают случаи когда нужно просто взять молоток и забить. ;)


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