2020-12-17:【正则表达式工具】使用Python+Tkinter构建RegexTool工具SourceCode2.0

本文分享了一款附带帮助信息的正则表达式工具——RegexTool,该工具基于Python和Tkinter库开发。
摘要由CSDN通过智能技术生成

附带了帮助信息的工具源代码

# 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', "()"), text4.delete("1.0", END), text4.insert("insert", "(re): 对正则表达式分组并记住匹配的文本")))
    button01 = Button(root, width=12, text="[ ]", command=lambda: (
    text1.insert('insert', "[]"), text4.delete("1.0", END), text4.insert("insert", "[...]: 用来表示一组字符,单独列出:[amk] 匹配 'a','m'或'k'")))
    button02 = Button(root, width=12, text="{ }", command=lambda: (text1.insert('insert', "{}"), text4.delete("1.0", END),
                                                                   text4.insert("insert",
                                                                                """re{ n}: 精确匹配 n 个前面表达式。例如, o{2} 不能匹配 "Bob" 中的 "o",但是能匹配 "food" 中的两个 o。\nre{ n,}	匹配 n 个前面表达式。例如, o{2,} 不能匹配"Bob"中的"o",但能匹配 "foooood"中的所有 o。"o{1,}" 等价于 "o+"。"o{0,}" 则等价于 "o*"。""")))
    # 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}"), text4.delete("1.0", END), text4.insert("insert", "re{ n, m}	匹配 n 到 m 次由前面的正则表达式定义的片段,贪婪方式")))

    button10 = Button(root, width=12, text="*",
                      command=lambda: (text1.insert('insert', "*"), text4.delete("1.0", END), text4.insert("insert", "匹配0个或多个的表达式。")))
    button11 = Button(root, width=12, text="+",
                      command=lambda: (text1.insert('insert', "+"), text4.delete("1.0", END), text4.insert("insert", "匹配1个或多个的表达式。")))
    button12 = Button(root, width=12, text="?", command=lambda: (
    text1.insert('insert', "?"), text4.delete("1.0", END), text4.insert("insert", "匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式。")))
    button13 = Button(root, width=12, text=".", command=lambda: (
    text1.insert('insert', "."), text4.delete("1.0", END), text4.insert("insert", "匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符。")))
    button14 = Button(root, width=12, text="-", command=lambda: (text1.insert('insert', "-"), text4.delete("1.0", END),
                                                                 text4.insert("insert",
                                                                              "标识两者之间的内容也可以被匹配,连接作用;如[0-9],匹配可以匹配0,1,2,3,4,5,6,7,8,9。")))

    button20 = Button(root, width=12, text="0-9", command=lambda: (
    text1.insert('insert', "0-9"), text4.delete("1.0", END), text4.insert("insert", "匹配任何数字。类似于 [0123456789]")))
    button21 = Button(root, width=12, text="a-z", command=lambda: (
    text1.insert('insert', "a-z"), text4.delete("1.0", END), text4.insert(
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值