【问题标题】:Java code to enforce to have number and character in Jtextfield强制在 Jtextfield 中包含数字和字符的 Java 代码
【发布时间】:2017-04-25 17:18:11
【问题描述】:
我有 Jtextfield,我想对其进行格式化,以便它接受以下格式。
KYC123456L
输入总是以“KYC”开头,以“L”结尾,中间有 6 个数字。
UI 有一个按钮,可以复制其他组件的内容并将其保存到文本文件中。但在复制之前,它应该验证 jtextfield 并复制是否只有上面的格式匹配,如果不是要显示的消息。
请提出建议。
【问题讨论】:
标签:
java
regex
swing
jtextfield
joptionpane
【解决方案1】:
框出正则表达式:^KYC[0-9]{6}L$ 以匹配您问题中所述的模式。
它将匹配以KYC开头的字符串,然后是6位数字,最后以L结尾。
注意:^ 标记字符串的开头,而$ 标记字符串的结尾。
String patternString = "^KYC[0-9]{6}L$";
Pattern p = Pattern.compile(patternString);
String test = jTextField.getText();
Matcher m = p.matcher(test);
boolean matches = m.matches();
if(matches == true)
// allow
else
// JOptionpane.showMessageDialog ---> your desired error message.