У меня есть сценарий ниже. Мне нужно xpath для ниже: У нас есть таблица с именем, кодом и поведением. Также у нас может быть пустой столбец рядом с кодом. Это может быть любое число. Но таблица начинается с имени и заканчивается «Поведение».Требуется XPath: Проверка значений внутри каждой строки конкретного столбца
THEAD пример: первый ряд
1) <Row>
<Cell><Element>Name</Element></Cell>
<Cell><Element>Code</Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
2)<Row>
<Cell><Element>Name</Element></Cell>
<Cell><Element>Code</Element></Cell>
<Cell><Element></Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
3) <Row>
<Cell><Element>Name</Element></Cell>
<Cell><Element>Code</Element></Cell>
<Cell><Element></Element></Cell>
<Cell><Element></Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
TBODY должен иметь значение во всех column.Mainly в Кодексе и пустой столбец THEAD. Также ячейка может содержать внутренний элемент Element1.
TBODY Первая строка Пример:
ex 1) <Row>
<Cell><Element>abc</Element></Cell>
<Cell><Element>23</Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
ex 2)<Row>
<Cell><Element>ttt</Element></Cell>
<Cell><Element>34</Element></Cell>
<Cell><Element>45</Element></Cell>
<Cell><Element>good</Element></Cell>
</Row>
ex 3) <Row>
<Cell><Element>yyy</Element></Cell>
<Cell><Element>22</Element></Cell>
<Cell><Element>33</Element></Cell>
<Cell><Element><Element1>4</Element1>4</Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
От Row 2 Onwards нам нужно проверить по-меньшей мере любом из элемента в столбце кода и соседний пустой столбец должен иметь значение. Если какая-либо одна строка имеет значение, мы должны преобразовать таблицу, как указано в Sample Output1: (Положительный случай). ie) Название таблицы должно быть изменено на XYZ и объединить всю ячейку с ячейкой элемента для столбца Code и соседнего пустого столбца.
Образец Input1: (положительный случай)
<Table Name="abc">
<Thead>
<Row>
<Cell><Element>Name</Element></Cell>
<Cell><Element>Code</Element></Cell>
<Cell><Element></Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
</Thead>
<Tbody>
<Row>
<Cell><Element>Sam</Element></Cell>
<Cell><Element>1</Element><Element>2</Element><Element>1</Element></Cell>
<Cell><Element>1</Element><Element></Element><Element>1</Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
<Row>
<Cell><Element>xyz</Element></Cell>
<Cell><Element>123</Element></Cell>
<Cell><Element></Element><Element></Element><Element><Element1>1<Element1></Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
</Tbody>
</Table>
Образец Output1: (положительный случай)
<Table Name="XYZ">
<Thead>
<Row>
<Cell><Element>Name</Element></Cell>
<Cell><Element>Code</Element></Cell>
<Cell><Element></Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
</Thead>
<Tbody>
<Row>
<Cell><Element>Sam</Element></Cell>
<Cell><Element>121</Element></Cell>
<Cell><Element>11</Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
<Row>
<Cell><Element>TTT</Element></Cell>
<Cell><Element>123</Element></Cell>
<Cell><Element>1</Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
<Row>
<Cell><Element>PPP</Element></Cell>
<Cell><Element>123</Element></Cell>
<Cell><Element>1</Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
</Tbody>
</Table>
Если все строки имеет пустое значение в любом одном столбце, то мы ничего не делаем.
Образец Input2: (Negative случай)
<Table Name="abc">
<Thead>
<Row>
<Cell><Element>Name</Element></Cell>
<Cell><Element>Code</Element></Cell>
<Cell><Element></Element></Cell>
<Cell><Element>Conduct</Element></Cell>
</Row>
</Thead>
<Tbody>
<Row>
<Cell><Element>Sam</Element></Cell>
<Cell><Element>1</Element><Element>2</Element><Element>3</Element></Cell>
<Cell><Element></Element><Element></Element><Element></Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
<Row>
<Cell><Element>xyz</Element></Cell>
<Cell><Element>123</Element></Cell>
<Cell><Element></Element><Element></Element><Element><Element1><Element1></Element></Cell>
<Cell><Element>Good</Element></Cell>
</Row>
</Tbody>
</Table>
Sample Output2:(Negative case)
same as input.
То, что мы пытались:
Количество (TBODY // Строка [число (./ клеток [2]/Элемент [номер (нормализуют-пространство (.)) и number (normalize-space (.))> 0])! = 0])
Эта работа выполняется только для столбца «Только код», но мы не знаем, сколько придет количество столбцов с адъювантными пустыми столбцами. нам нужно знать xpath.
http://stackoverflow.com/help/someone-answers –