powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вопрос по selectnodes
4 сообщений из 4, страница 1 из 1
Вопрос по selectnodes
    #39160222
Игорь86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, форумчане.

Кто-нибудь может подсказать, чем отличается SelectNodes("Раздел") от SelectNodes("/Раздел") от SelectNodes("//Раздел")?

Нигде не могу найти информацию. Может кто знает и растолкует отличия?

Вариант 1
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
For m = 0 To xmlreader.SelectNodes("//Файл/Пачка/Сведения").Length - 1
    
        For n = 0 To xmlreader.SelectNodes("//Файл/Пачка/Сведения").Item(m).SelectNodes("Раздел").Length - 1
                ***ДЕЙСТВИЯ***
        Next n
        
Next m



Вариант 2
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
For m = 0 To xmlreader.SelectNodes("//Файл/Пачка/Сведения").Length - 1
    
        For n = 0 To xmlreader.SelectNodes("//Файл/Пачка/Сведения").Item(m).SelectNodes("/Раздел").Length - 1
                ***ДЕЙСТВИЯ***
        Next n
        
Next m



Вариант 3
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
For m = 0 To xmlreader.SelectNodes("//Файл/Пачка/Сведения").Length - 1
    
        For n = 0 To xmlreader.SelectNodes("//Файл/Пачка/Сведения").Item(m).SelectNodes("//Раздел").Length - 1
                ***ДЕЙСТВИЯ***
        Next n
        
Next m
...
Рейтинг: 0 / 0
Вопрос по selectnodes
    #39160243
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SelectNodes("Раздел") - выбор узлов "Раздел" в текущем контексте
SelectNodes("/Раздел") - выбор корневого узла "Раздел", то есть в результате будет коллекция из одного элемента при условии, что он называется "Раздел", или пустая коллекция.
SelectNodes("//Раздел") - выбор всех узлов "Раздел" в документе независимо от контекста.
до кучи: SelectNodes(".//Раздел") - выбор всех узлов "Раздел" в текущем контексте и глубже.
...
Рейтинг: 0 / 0
Вопрос по selectnodes
    #39160252
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
омг, дальше адский ад написан - при каждой итерации цикла происходит выборка всех узлов, причем поиск по всему документу: //Файл/Пачка/Сведения

Если "сведения" состоят из "разделов", то как-то так должно быть:
Код: vbnet
1.
2.
3.
4.
5.
For Each sved in xmlreader.SelectNodes("//Файл/Пачка/Сведения")
    For Each razd in sved.SelectNodes("Раздел")
        '***ДЕЙСТВИЯ***
    Next
Next
...
Рейтинг: 0 / 0
Вопрос по selectnodes
    #39160261
Игорь86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,

Спасибо за информацию.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вопрос по selectnodes
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]