下面是一个使用正则表达式的QLineEdit案例,它用于验证输入是否符合指定的格式要求:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QVBoxLayout
from PyQt5.QtCore import QRegExp
from PyQt5.QtGui import QRegExpValidator
class MyWidget(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
layout = QVBoxLayout()
label = QLabel("请输入手机号码:")
layout.addWidget(label)
line_edit = QLineEdit()
# 创建一个正则表达式对象,并设置匹配规则为11位数字开头的手机号码
regex = QRegExp("[1-9]\\d{10}")
# 创建一个正则表达式验证器,并将其应用于QLineEdit上
validator = QRegExpValidator(regex)
line_edit.setValidator(validator)
layout.addWidget(line_edit)
self.setLayout(layout)
if __name__ == '__main__':
app = QApplication(sys.argv)
widget = MyWidget()
widget.show()
sys.exit(app.exec_())
在这个例子中,我们创建了一个窗口,包含一个标签和一个带有正则表达式验证器的QLineEdit。该正则表达式验证器只允许输入以非零数字开头的11位手机号码。如果用户尝试输入其他内容,该文本框将无法接受。
你可以根据需要修改正则表达式来适应不同的输入要求。
内容由零声教学AI助手提供,问题来源于学员提问