java - java项目的正则表达式

标签 java regex

我将如何为以下示例执行java正则表达式,每个示例都被扫描仪作为字符串接收,并且只能在扫描仪接收每个部分之后设置正则表达式,因此可以在扫描仪之后设置正则表达式,例如

Scanner scan = new Scanner(System.in);
String veriableName = scan.nextLine();
String studentID = scan.nextLine();
String word = scan.nextLine();
................
//regex can only be set here
String veriableNamePattern = "";
String studentIDPattern="";
String wordPattern="";
.............
if(veriableNamePattern.matches(veriableNamePattern ){
System.out.println(veriableName + " is valid.");
}
else{
System.out.println(studentID + " is valid.");
}

以下是我尝试做的示例: 由一些字母字符后跟任意字母或数字序列组成的变量名称。

学生证号码,由 7 位数字表示,必须以 1 开头,以字母 s 结尾。

任何以“ed”结尾的四个字母的单词。

由两位数字后跟三个大写字母表示的产品代码。

在行首查找从 €100 到 €999 的所有 € 值。

最佳答案

只是..通读你的代码,把它当作学期论文,你当然也校对过它们:

  1. 您正在调用 veriableNamePattern.matches(veriableNamePattern) - 当然,它不会。您想要匹配 veriableName

  2. 在这两种情况下都打印 studentID + "is valid.",因此无法区分。大概您想在第二个 println 行中的某处引入 not

关于java - java项目的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62019983/

相关文章:

java - Spring Boot CommandLineRunner 异常处理

java - 集线器已关闭或没有响应 : Unexpected char 0x131 at 23 in User-Agent value: selenium/3. 14.0 (java w²ndows) SeleniumGrid v3.14.0

java - 策略设计模式

java - 选择设计模式

java - 当 JAVA_HOME 指向 JRE 1.8 时,无法使用 activemq-admin.bat 停止 JMS 代理

jquery - 名称的跨浏览器 Jquery 正则表达式

mysql - 我在 mysql 上使用带有 setlist 的正则表达式得到奇怪的答案

python - 如何替换文本 block 中的多个正则表达式匹配

java - 检索正则表达式匹配的模式

python - 使用 Python 在不同实例中分割 verilog 路径的正则表达式模式