吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2586|回复: 8
收起左侧

[Python 转载] 一个简单的正则小工具

[复制链接]
lz270978971 发表于 2020-7-30 17:22
最近在学习pyqt,写了一个简单的验证正则的小工具,仅供学习交流使用
需要安装 PyQt5 :pip install PyQt==5.15.0

[Python] 纯文本查看 复制代码
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file '正则.ui'
#
# Created by: PyQt5 UI code generator 5.15.0
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.

import sys
import re
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.excel_label = QtWidgets.QLabel(self.centralwidget)
        self.excel_label.setGeometry(QtCore.QRect(280, 20, 211, 20))
        self.excel_label.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.excel_label.setTextFormat(QtCore.Qt.AutoText)
        self.excel_label.setObjectName("excel_label")
        self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget)
        self.textBrowser.setGeometry(QtCore.QRect(190, 260, 351, 201))
        self.textBrowser.setObjectName("textBrowser")
        self.content_textEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.content_textEdit.setGeometry(QtCore.QRect(190, 100, 351, 78))
        self.content_textEdit.setObjectName("content_textEdit")
        self.start_pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.start_pushButton.setGeometry(QtCore.QRect(60, 340, 112, 32))
        self.start_pushButton.setObjectName("start_pushButton")
        self.re_lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.re_lineEdit.setGeometry(QtCore.QRect(190, 220, 113, 21))
        self.re_lineEdit.setObjectName("re_lineEdit")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(80, 120, 58, 16))
        self.label.setObjectName("label")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(80, 220, 81, 16))
        self.label_2.setObjectName("label_2")
        MainWindow.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.excel_label.setText(_translate("MainWindow", "python正则小工具"))
        self.start_pushButton.setText(_translate("MainWindow", "开始匹配"))
        self.label.setText(_translate("MainWindow", "文本"))
        self.label_2.setText(_translate("MainWindow", "正则表达式"))


class MyMainForm(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super(MyMainForm,self).__init__()
        self.setupUi(self)

        # 添加开始匹配的信号和槽,调用display函数
        self.start_pushButton.clicked.connect(self.display)

    def display(self):
        text = self.content_textEdit.text()
        re_ = self.re_lineEdit.text()
        pattern = re.compile(fr"{re_}")
        m = pattern.findall(text)
        re_text = f"匹配结果:\n{m}"
        self.textBrowser.setText(re_text)


if __name__ == "__main__":
    # 固定的,PyQt5程序都需要QApplication对象。sys.argv是命令行参数列表,确保程序可以双击运行
    app = QApplication(sys.argv)
    # 初始化
    myWin = MyMainForm()
    # 将窗口控件显示在屏幕上
    myWin.show()
    # 程序运行,sys.exit方法确保程序完整退出。
    sys.exit(app.exec_())

image.png

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
单手空接 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lz270978971 发表于 2020-7-30 17:23
忘记说了,我的版本是python3.7.3
lou.zhichen 发表于 2020-7-30 17:50
Mark一下
(请善用论坛编辑功能,不要自己占沙发啊~)
isroot 发表于 2020-7-30 17:54
shaer1979 发表于 2020-7-30 17:58
虽然不懂,但是先收藏了。
fys2008 发表于 2020-7-30 18:58
好像没什么用啊
 楼主| lz270978971 发表于 2020-7-30 19:54
fys2008 发表于 2020-7-30 18:58
好像没什么用啊

正则测试的小工具
laochaguan 发表于 2021-2-2 21:53
感谢分享
zhaoshaok 发表于 2021-2-3 09:57
很不错,收藏!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 19:25

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表