java - 如果条件,接受java中的所有内容
问题描述
今天我写了一个程序来自动检查 Netflix 帐户是否正常工作。但是我在需要接受 URL 中的所有国家/地区代码的时候遇到了困难。我想在 linux 中使用 * 之类的东西,但我的 IDE 给了我错误。解决方案是什么,有更好的方法吗?
WebUI.openBrowser('')
WebUI.navigateToUrl('https://www.netflix.com/login')
WebUI.setText(findTestObject('/Page_Netflix/input_email'), 'example@gmail.com')
WebUI.setText(findTestObject('/Page_Netflix/input_password'), '1234')
WebUI.click(findTestObject('/Page_Netflix/button_Sign In'))
TimeUnit.SECONDS.sleep(10)
if (WebUI.getUrl() == "https://www.netflix.com/" + * + "-" + * + "/login") {
}
WebUI.closeBrowser()
解决方案
所以这是你的尝试:
if (WebUI.getUrl() == "https://www.netflix.com/" + * + "-" + * + "/login") {
}
失败了,因为你不能*
像那样使用(除了 using ==
,这不是你在使用 java 时应该做的)。但我认为这就是你想要的:
if (WebUI.getUrl().matches("https://www\\.netflix\\.com/.+-.+/login")) {
// do whatever
}
这将在您所在的任何国家/地区匹配:任何网址,例如https://www.netflix.com/it-en/login
. 如果在 if 语句中您需要使用国家信息,您可能需要一个匹配器:
import java.util.regex.*;
Pattern p = Pattern.compile("https://www\\.netflix\\.com/(.+)-(.+)/login");
Matcher m = p.matcher(WebUI.getUrl());
if (m.matches()) {
String country = m.group(1);
String language = m.group(2);
// do whatever
}
请注意,我们在这里使用 java,因为您的问题是这样标记的。Katalon 还可以使用 javascript 和 groovy,您也可以在单引号字符串中使用它们并省略分号。在groovy中,==
对于字符串比较是可以的,也可以使用正则表达式的简写。
推荐阅读
- adobe - 如何设置 Adobe 分析?
- c# - ARM 上用于 HoloLens 2 的 gRPC 支持
- ffmpeg - 无法在 buildozer 或 p4a 中构建 FFmpeg
- c# - Google Drive Auth2:如何修复错误 400:redirect_uri_mismatch
- python - 如何创建一个猜数字游戏(机器猜用户正在想的数字)
- python - 使用 pynput 键入冒号 (:)
- java - 从 txt 文件中读取矩阵
- sql-server - 如何在部分百分比的 SELECT 语句中避免 SELECT COUNT
- azure-media-services - 使用实时字幕流式传输
- apache-spark - 何时加载自定义 TableCatalog?