AS3 - веб-страница с разделением строк не работает - PullRequest
1 голос
/ 28 ноября 2011

У меня есть длинная строка HTML с веб-страницы.Я хочу получить доступ к содержимому, и я нашел это непосредственно перед содержимым:

<span style='margin-left:3px'><g:plusone size='medium' count='false'></g:plusone></span>
</div>

Прорыв строки, и я не думаю, что ActionScript 3 любит разрывы строк при использовании split.Например:

var theContent:Array = htmlSource.split("<span style='margin-left:3px'><g:plusone size='medium' count='false'></g:plusone></span></div>");

выводит один большой массив всего HTML-источника.

Как мне сделать так, чтобы я мог успешно получать контент?Я пытался / г, это не работает.

Ответы [ 3 ]

1 голос
/ 28 ноября 2011

Почему бы не сделать простой поиск + substr?

var sStr:String="<span style='margin-left:3px'><g:plusone size='medium' count='false'></g:plusone></span></div>";
var idx:int=htmlSource.indexOf(sStr);
var len:int=sStr.length;

var content:String=htmlSource.substr(idx+len);
1 голос
/ 29 ноября 2011

Как насчет использования регулярного выражения?

var regExp:RegExp = /(<span style='margin-left:3px'><g:plusone size='medium' count='false'><\/g:plusone><\/span>\s?<\/div>)(.*)/s;
var content:String = htmlSource.replace(regExp, "$2");

"$2" возвращает вторую группу захвата (т. Е. Все после предоставленного вами разделителя). Если вы хотите массив, используйте match(regExp) вместо.

\s? и флаг точки (s в конце) выполняют работу.

Примечание: это действительно ленивый код, так как вы можете легко сократить regExp. Принципиальная вещь - эффект.

1 голос
/ 28 ноября 2011

Вы пробовали \n?

var theContent:Array = htmlSource.split("...snip...</span>\n</div>");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...