我想用动态数字获取文本

时间:2015-04-21 14:22:44

标签: java c# selenium selenium-webdriver

我想在文本末尾用动态数字断言文本。

离。

  

硒中没有直接机制来识别提取pdf数据的PDF,   要实现此功能,您可以使用C#编写自定义代码以阅读PDF(123)234-2345。

我可以获取文字。但是我如何将其断言为数字部分,即(123) 234-2345

我尝试过的事情:

Regex regularExpression = new Regex(@"There is no direct mechanism in selenium to identify the PDF of extract the data of pdf, 
To achieve this functionality you can write your custom code in C# to read the PDF(\d{3}) \d{3}-\d{4}.");
validateText =  (_driver.FindElement(By.XPath("//form[@id='provider-account-credentials']//div[@class='row']")).Text).Replace("\r\n","");
Assert.IsTrue(regularExpression.IsMatch(validateText));

问题: regularExpression.IsMatch(validateText)正在回归虚假。

2 个答案:

答案 0 :(得分:0)

可能的原因是(可能)文本不完全匹配。您也可以使用Contains()进行部分匹配。

Regex regularExpression = new Regex(@"There is no direct mechanism in selenium to identify the PDF of extract the data of pdf, 
To achieve this functionality you can write your custom code in C# to read the PDF(\d{3}) \d{3}-\d{4}.");
validateText =  (_driver.FindElement(By.XPath("//form[@id='provider-account-credentials']//div[@class='row']")).Text).Replace("\r\n","");
Assert.IsTrue(regularExpression.Contains(validateText));

答案 1 :(得分:0)

在正则表达式中,您使用'('&')'char。使用此字符to capture group 你必须逃脱它们:

There is no direct mechanism in selenium to identify the PDF of extract the data of pdf, To achieve this functionality you can write your custom code in C# to read the PDF \(\d{3}\) \d{3}-\d{4}.

希望有所帮助。