使用Python+Tkinter构建RegexTool工具
考到群组里有人寻求这个工具,结合自己之前对Tkinter的了解,以图片为原型图,构建了这款GUI正则表达式匹配工具
- 快速输入正则表达式相关符号
- 点击其中的表达式,下方增加提示框,显示帮助信息
- 内置了一些常用的正则表达式规则,可供参考
原则及帮助信息主要来源runoob网站进行获取!
PS:程序源代码如下:
# encoding:utf8
"""
__author__ : weilinlin
__file__ : RegexTool
__time__ : 2020-12-16
"""
from tkinter import *
from tkinter import messagebox, ttk
import re
root = Tk()
root.title("RegexTool")
root.resizable(0, 0)
def init():
"""
构造GUI初始化页面
TODO: 长度最大匹配长度判断逻辑尚未补充
TODO: 常用正则表达式列表
:return:
"""
button00 = Button(root, width=12, text="( )", command=lambda: text1.insert('insert', "()"))
button01 = Button(root, width=12, text="[ ]", command=lambda: text1.insert('insert', "[]"))
button02 = Button(root, width=12, text="{ }", command=lambda: text1.insert('insert', "{}"))
# button03 = Button(root, width=12, text="( )", command=lambda: text1.insert('insert', "()"))
# button04 = Button(root, width=12, text="( )", command=lambda: text1.insert('insert', "()"))
label03 = Label(root, width=12, text="限制长度")
button04 = Button(root, width=12, text="{1, 15}", command=lambda: text1.insert('insert', "{1,15}"))
button10 = Button(root, width=12, text="*", command=lambda: text1.insert('insert', "*"))
button11 = Button(root, width=12, text="+", command=lambda: text1.insert('insert', "+"))
button12 = Button(root, width=12, text="?", command=lambda: text1.insert('insert', "?"))
button13 = Button(root, width=12, text=".", command=lambda: text1.insert('insert', "."))
button14 = Button(root, width=12, text="-", command=lambda: text1.insert('insert', "-"))
button20 = Button(root, width=12, text="0-9", command=lambda: text1.insert('insert', "0-9"))
button21 = Button(root, width=12, text="a-z", command=lambda: text1.insert('insert', "a-z"))
button22 = Button(root, width=12, text="A-Z", command=lambda: text1.insert('insert', "A-Z"))
button23 = Button(root, width=12, text="^", command=lambda: text1.insert('insert', "^"))
button24 = Button(root, width=12, text="$", command=lambda: text1.insert('insert', "$"))
button30 = Button(root, width=12, text=