Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2012, 14:05   #21
RageGod
Пользователь
 
Регистрация: 08.05.2012
Сообщений: 35
По умолчанию

Если бы я знал, как загнать все строки в массив, я думаю уже бы разобрался сам тогда
RageGod вне форума Ответить с цитированием
Старый 02.08.2012, 14:16   #22
Петррр
Форумчанин
 
Аватар для Петррр
 
Регистрация: 02.09.2011
Сообщений: 336
По умолчанию

Платите в общем если не понимаете.
Если ты не можешь найти то, ради чего стоит жить, лучше найти то, за что стоит умереть
Петррр вне форума Ответить с цитированием
Старый 02.08.2012, 14:19   #23
RageGod
Пользователь
 
Регистрация: 08.05.2012
Сообщений: 35
По умолчанию

Как я вижу, форум тут не платный.
Помочь так тяжело?))
RageGod вне форума Ответить с цитированием
Старый 02.08.2012, 14:23   #24
Петррр
Форумчанин
 
Аватар для Петррр
 
Регистрация: 02.09.2011
Сообщений: 336
По умолчанию

Между помощью и "сделай за меня" существует тонкая грань. И Вы уже ее перешли. Подсказка: для получения всех юзер-неймов нужно перебрать коллекцию у регулярного выражения.

Добавлено
Приду домой покажу. Если вы выложите весь текст того, что нужно разобрать.
Если ты не можешь найти то, ради чего стоит жить, лучше найти то, за что стоит умереть

Последний раз редактировалось Петррр; 02.08.2012 в 14:29.
Петррр вне форума Ответить с цитированием
Старый 02.08.2012, 14:31   #25
RageGod
Пользователь
 
Регистрация: 08.05.2012
Сообщений: 35
По умолчанию

Я понял, что стоит использовать MatchCollection.

Ладно, обращусь к кому-нибудь другому, раз помогать тут с этим не хотят.

Спасибо за эту помощь.
RageGod вне форума Ответить с цитированием
Старый 02.08.2012, 15:06   #26
RageGod
Пользователь
 
Регистрация: 08.05.2012
Сообщений: 35
По умолчанию

Вообщем, есть файл, с таким содержанием:

PHP код:
typeof(block_base_friendslist) != 'undefined' base.friendslist.surface_4_10.render({"deleteFriends":false,"avatarOnly":null,"user":null,"capFriends":null,"friends":[{"userId":"2832658801600661648","user":

{
"username":"Se7enn","gravatarMd5":"d82e3e8acd651b57e0e95167c0ef18a6","userId":"2832658801600661648","createdAt":1320570924,"presence":

{
"username":"woaiduhan","gravatarMd5":"9c2be80165b1b980ae41343c606766b2","userId":"2832665149443888906","createdAt":1319525173,"presence":

{
"username":"ohnyou","gravatarMd5":"6cce77257fd22243e494f7ddb18c0eb2","userId":"2832660339165079145","createdAt":1319825622,"presence"

{"username":"ReXueNanEr","gravatarMd5":"40bcdc652524d6e4d898eced9bc96438","userId":"2832659177345811875","createdAt":1319515304,"presence":

{
"username":"xiaowugui001","gravatarMd5":"ad13c05325fbbdd3d8eb9c4417e3cff5","userId":"2832659177356822572","createdAt":1319645032,"presence":

{
"username":"HuAHuAGonGZiGe","gravatarMd5":"ae3efb1337e183a1159b8e9a737c5626","userId":"2832660339135928299","createdAt":1319525575,"presence

{"
username":"AluSeph","gravatarMd5":"90f0492c44c5c3902f8cf785867b474b","userId":"2832659368472531505","createdAt":1319518231,"presence":

{"
username":"Cobra9874","gravatarMd5":"3667cae8678857753d1dc49d108b4022","userId":"2832660339144485741","createdAt":1319633020,"presence":

{"
username":"CHINAW1N","gravatarMd5":"7586a742b5da09d70f4eb4b2a09cefde","userId":"2832659982652390868","createdAt":1319515307,"presence": 

Вообщем есть такой блок.
После данного текста "typeof(block_base_friendslist) != 'undefined' ? " мне надо начать парсить строки, после параметра "username", до тех пор, пока они не закончатся.
Мне надо их спарсить, и добавить в ListBox (уж в ListBox я сам смогу занести)

Использую ваш пример выше (под номером 2). Сделал вот так:
Код:
            Public Sub Parser()
        Dim Client As New Net.WebClient

        Parser_Acc = Client.DownloadString("http://www.site.com/")
        JsonParser(Parser_Acc)

    Public Sub JsonParser(ByVal json As String)
        Dim pattern As String = """username""\s*:\s*""(?<username>\w+)"""
        Dim regex As New Regex(pattern, RegexOptions.Compiled)
        MsgBox(regex.Match(json).Groups("username").Value)
    End Sub
И он парсит все так, как мне надо. Но он парсит имя только из одной строки, а мне надо из всех, которые встречаются в этом файле.

Последний раз редактировалось RageGod; 02.08.2012 в 15:09.
RageGod вне форума Ответить с цитированием
Старый 02.08.2012, 15:37   #27
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,120
По умолчанию

RageGod

Но он парсит имя только из одной строки, а мне надо из всех, которые встречаются в этом файле.

пАтамуштА надо цикл крутить

Код:
var text = ...
var rx = new Regex(@"\{\""username\"":\""(?<UserName>[^\""]+)\""", RegexOptions.Compiled);

foreach (Match mc in rx.Matches(text))
	Console.WriteLine("Username: {0}", mc.Groups["UserName"]);
Rififi вне форума Ответить с цитированием
Старый 02.08.2012, 17:12   #28
RageGod
Пользователь
 
Регистрация: 08.05.2012
Сообщений: 35
По умолчанию

Цитата:
Сообщение от Rififi Посмотреть сообщение
RageGod

Но он парсит имя только из одной строки, а мне надо из всех, которые встречаются в этом файле.

пАтамуштА надо цикл крутить

Код:
var text = ...
var rx = new Regex(@"\{\""username\"":\""(?<UserName>[^\""]+)\""", RegexOptions.Compiled);

foreach (Match mc in rx.Matches(text))
	Console.WriteLine("Username: {0}", mc.Groups["UserName"]);
Можно код на VB.NET ?
А то перевести как не получилось, в отличии от других примеров.
И кстате, переменная "text" - это именно та строка, откуда парсить нужные мне данные, так?) (а то не уверен, правильно ли я понял)
RageGod вне форума Ответить с цитированием
Старый 04.08.2012, 10:45   #29
RageGod
Пользователь
 
Регистрация: 08.05.2012
Сообщений: 35
По умолчанию

Все, сделал.

Спасибо.
Тему можно закрывать.

Последний раз редактировалось RageGod; 04.08.2012 в 10:54.
RageGod вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходимо распарсить строку celovec Общие вопросы Delphi 14 05.05.2011 17:52
Распарсить строку bulldog5293 Работа с сетью в Delphi 7 18.12.2010 19:25
Как вытащить строку из vector'a Tema_Crazzzy Общие вопросы C/C++ 2 12.09.2010 20:38
Как лучше распарсить строку? Molotoff Общие вопросы C/C++ 8 18.06.2009 18:37
Помогите распарсить строку Alexander1991 Помощь студентам 1 08.03.2009 22:33