我已经进入Selenium WebDriver,并且仍然找到最令人困惑的示例。

我需要能够读取一个字符串(成功),并运行一个条件查询,询问是否存在特定的文本。

为了本文的缘故。

String oneoff = "Jeff is old"


我需要匹配Jeff,请参见下面的代码,只要Jeff存在于字符串中,我就想返回true。如果杰夫不存在,那么我会检查一下,说出50-75个其他名字。但是,字符串可能包含其名称和其他无法控制的文本。所以我必须做部分比赛。

问题1.我是否搞砸了,将不得不以我见过的那种疯狂格式构建每个正则表达式,还是我遗漏了一些明显的东西?

问题2。请问有人出于我的理智,请告诉我与Jeff匹配的正确方法,文字可能在Jeff的名字之前和之后。

谢谢!

String oneoff = driver.findElement(By.id("id_one_off_byline"))
        .getAttribute("value");
System.out.println("One Off is:" + oneoff);
if (oneoff.matches("Jeff")) {
    System.out.println("It is Jeff");
} else {
    System.out.println("it is not jeff");
}


这只是代码的功能部分,

最佳答案

因为Jeff存在于字符串中,所以我想返回true


那你可能应该用

if (oneoff.contains("Jeff"))


由于matches使用正则表达式作为参数,因此if (oneoff.matches("Jeff"))仅在oneoff = "Jeff"时返回true。

关于java - Java,如果部分匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14867308/

10-10 05:49