我知道我可以使用一系列遍历字符串的 for 循环来完成此操作,但那将是糟糕的编程。好吧,我的教授不希望我这样做。我想使用正则表达式来做到这一点。
原文由 Michael Drum 发布,翻译遵循 CC BY-SA 4.0 许可协议
我知道我可以使用一系列遍历字符串的 for 循环来完成此操作,但那将是糟糕的编程。好吧,我的教授不希望我这样做。我想使用正则表达式来做到这一点。
原文由 Michael Drum 发布,翻译遵循 CC BY-SA 4.0 许可协议
@goshDeveloper 的回答示例。
首先用你想要的正则表达式创建一个 Pattern 变量。
public final Pattern textPattern = Pattern.compile("^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d).+$");
其次,您可以像这样使用它:
public boolean isTextValid(String textToCheck) {
return textPattern.matcher(textToCheck).matches();
}
原文由 Yhondri 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.3k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
1 回答2.1k 阅读✓ 已解决
对于简单的字符串检查,单次扫描字符串就足够了。由于 Regex 不会提供任何显着的好处,这里有一个简单的 for 循环来实现相同的目的:
测试运行:
我认为这应该有助于 OP 的特殊问题。