java - 如何迭代字符串多次提取并存储特定内容

标签 java

上下文

我有一个看起来像 XPath 的 String:

//img[@id='imgError' 和 @src='../plaf/images/default/menu/menu_down.gif' 和 @alt='Authorise' 和 @ref_element = 'Object/Common/Frames/frame1'].

目标

我的目标是提取所有@ref_element=...元素并在相应的框架中切换。

frame1 的 XPath 为 //frame[contains(@id, 'frame1') and contains(@name, 'frame1')]

所以预期的结果应该是:

// switch into the frame thanks to xpath extracted before
driver.switchTo().frame(driver.find_element_by_xpath("//frame[contains(@id, 'frame1') and contains(@name, 'frame1')]"));
// do an action
driver.find_element_by_xpath("//img[@id='imgError' and @src='../plaf/images/default/menu/menu_down.gif' and @alt='Authorise']").click()

获取 @ref_element 的 XPath 并在另一个框架中切换没有任何问题。

但是,我需要帮助找到一种算法来浏览初始字符串并提取 @ref_element=...

问题

你能帮我构建这个算法吗,因为我不知道该怎么做......至少有一些线索?

非常感谢。

最佳答案

我没有完全理解这个问题,但是如果您正在从 @ref_element='Object/Common/Frames/frame1' 中查找 Object/Common/Frames/frame1强>那么下面的代码片段可以帮助 -

// this gives index of `'` after @ref_element
int x = "input".indexOf("@ref_element='");

// this gives index of `'` after x
int y = "input".indexOf("'", x + 1);

return "input".substring(x+1, y);

如果这不能解决您的问题,请忽略。

关于java - 如何迭代字符串多次提取并存储特定内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59319596/

相关文章:

java - java.lang.NoSuchMethodException 错误(布局)

java - 有没有类似 NGen 的 JVM 预编译解决方案?

java - LWJGL/OpenGL 顶点缓冲区对象

java - 如何在输入拆分中计算位置

java - 从多维获取字符串

Java:导出到 JAR 后路径名不起作用

java - 如何在没有 IntelliJ 模板的情况下创建命令行应用程序?

java - Hibernate:使用相同连接列的多个关系

java - 启用 stomp 后的 activemq oom

java - 在 NetBeans 外部访问 Java DB