博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用swing做一个简单的正则验证工具
阅读量:5052 次
发布时间:2019-06-12

本文共 2888 字,大约阅读时间需要 9 分钟。

直接上代码吧,因为我对swing也不熟悉,照着API一点点拼出来的。

import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.regex.Matcher;import java.util.regex.Pattern;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;public class RegExpMatcher {    public static void main(String[] args) {        JFrame frame = new JFrame("正则表达式匹配器");        frame.setSize(350, 150);        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        JPanel panel = new JPanel();        JLabel queryStringLabel = new JLabel("匹配字符串:");        queryStringLabel.setBounds(10, 20, 80, 25);        JTextField queryStringText = new JTextField(20);        queryStringText.setBounds(100, 20, 165, 25);        JLabel regExpLabel = new JLabel("正则表达式:");        regExpLabel.setBounds(10, 50, 80, 25);        JTextField regExpText = new JTextField(20);        regExpText.setBounds(100, 50, 165, 25);        JButton matchButton = new JButton("部分匹配");        matchButton.setBounds(10, 80, 80, 25);        matchButton.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                String queryString = queryStringText.getText().trim();                String regExp = regExpText.getText().trim();                regExp = regExp.replace("\\\\", "\\");                try {                    Pattern pattern = Pattern.compile(regExp);                    Matcher matcher = pattern.matcher(queryString);                    matchButton.setText("" + matcher.find());                } catch (Exception e2) {                    matchButton.setText("error");                    throw e2;                }            }        });        JButton matchFullButton = new JButton("完全匹配");        matchFullButton.setBounds(100, 100, 80, 25);        matchFullButton.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                String queryString = queryStringText.getText().trim();                String regExp = regExpText.getText().trim();                regExp = regExp.replace("\\\\", "\\");                try {                    Pattern pattern = Pattern.compile(regExp);                    Matcher matcher = pattern.matcher(queryString);                    matchFullButton.setText("" + matcher.matches());                } catch (Exception e2) {                    matchFullButton.setText("error");                    throw e2;                }            }        });        panel.add(queryStringLabel);        panel.add(queryStringText);        panel.add(regExpLabel);        panel.add(regExpText);        panel.add(matchButton);        panel.add(matchFullButton);        frame.add(panel);        frame.setVisible(true);    }}

打包成可执行的jar包,参考

转载于:https://www.cnblogs.com/xiaoyucoding/p/7698882.html

你可能感兴趣的文章
什么是ODBC和JDBC?
查看>>
蓝桥杯- 入门训练 Fibonacci数列
查看>>
EnableEventValidation错误原因分析以及解决办法
查看>>
Java编程练习(四)——集合框架应用
查看>>
快速排序法
查看>>
win10 添加项目右键用vscode打开
查看>>
关于Kb/s,KB/s的一些知识
查看>>
2019-1-9笔记
查看>>
程序员求职之道(《程序员面试笔试宝典》)之面试官箴言?
查看>>
加速网站访问的一些实践体会
查看>>
中国象棋程序的设计与实现(一)--项目截图
查看>>
十一月书稿
查看>>
两只小熊队高级软件工程第九次作业敏捷冲刺4
查看>>
推荐一个好用的虚拟主机
查看>>
ulimit
查看>>
php代码执行顺序
查看>>
php 写入数据到MySQL以及从MySQL获取数据,页面出现乱码的解决方法
查看>>
MYSQL视图的学习笔记
查看>>
爬虫基础
查看>>
laravel常用artisan命令
查看>>