Я хочу сгенерировать xPath из html-файла. До сих пор я преуспели хранить источник Html в строку и создания базового XPath, используя Сличитель регулярное выражение следующим образом: -java: generate xpath using string matcher regex
String text = "<html><body><table><tr id=\"x\"><td>abc</td><td></td><td>xyz</td></tr></table></body></html>";
//I want xpath till label "xyz"
String unwanted= "xyz";
//so splitting and storing needed String
String[] neededString=text.split(unwanted);
String a="";
//pattern for extracting tags
String patternString1 = "<(.+?)>";
Pattern pattern = Pattern.compile(patternString1);
Matcher matcher = pattern.matcher(neededString[0]);
while(matcher.find()) {
a=a.concat(matcher.group(1)+"/");
System.out.println(a);
}
Этот код работает для базового тега структуры без нескольких дочерних узлов, как несколько <td>
«s в <tr>
, Может ли кто-нибудь улучшить мой код, чтобы включить генерацию xpath для нескольких дочерних элементов, а также для захвата атрибутов, таких как идентификаторы, класс и т. Д.
Любая помощь очень ценится. Спасибо заранее.
Почему именно вы думаете, что с помощью регулярных выражений поможет вам здесь? Используйте правильный парсер HTML, делая это с помощью регулярного выражения невозможно. – Tomalak