regex for numeric value for data from text files; closes #127

This commit is contained in:
Dominik Demuth
2023-11-05 17:11:28 +01:00
parent cb2bc78a2a
commit f956c111c2
5 changed files with 196 additions and 100 deletions

View File

@ -14,7 +14,7 @@ from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_ascii_reader(object):
def setupUi(self, ascii_reader):
ascii_reader.setObjectName("ascii_reader")
ascii_reader.resize(627, 1245)
ascii_reader.resize(665, 904)
self.verticalLayout = QtWidgets.QVBoxLayout(ascii_reader)
self.verticalLayout.setObjectName("verticalLayout")
self.tabWidget = QtWidgets.QTabWidget(ascii_reader)
@ -156,39 +156,51 @@ class Ui_ascii_reader(object):
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.gridLayout_2.addItem(spacerItem1, 4, 1, 1, 1)
self.horizontalLayout_4.addLayout(self.gridLayout_2)
self.verticalLayout_4 = QtWidgets.QVBoxLayout()
self.verticalLayout_4.setObjectName("verticalLayout_4")
self.horizontalLayout_4.addLayout(self.verticalLayout_4)
self.verticalLayout_3.addWidget(self.groupBox)
self.dsdfsf = QtWidgets.QLabel(self.tabWidgetPage1)
self.dsdfsf.setObjectName("dsdfsf")
self.verticalLayout_3.addWidget(self.dsdfsf)
self.label_8 = QtWidgets.QLabel(self.tabWidgetPage1)
self.label_8.setObjectName("label_8")
self.verticalLayout_3.addWidget(self.label_8)
self.radioButton = QtWidgets.QRadioButton(self.tabWidgetPage1)
self.radioButton.setObjectName("radioButton")
self.gridLayout = QtWidgets.QGridLayout()
self.gridLayout.setObjectName("gridLayout")
self.re_match_index = QtWidgets.QSpinBox(self.tabWidgetPage1)
self.re_match_index.setMinimum(1)
self.re_match_index.setObjectName("re_match_index")
self.gridLayout.addWidget(self.re_match_index, 1, 3, 1, 1)
self.label_9 = QtWidgets.QLabel(self.tabWidgetPage1)
self.label_9.setObjectName("label_9")
self.gridLayout.addWidget(self.label_9, 1, 2, 1, 1)
self.regex_input = QtWidgets.QLineEdit(self.tabWidgetPage1)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.regex_input.sizePolicy().hasHeightForWidth())
self.regex_input.setSizePolicy(sizePolicy)
self.regex_input.setObjectName("regex_input")
self.gridLayout.addWidget(self.regex_input, 1, 1, 1, 1)
self.re_button = QtWidgets.QRadioButton(self.tabWidgetPage1)
self.re_button.setChecked(True)
self.re_button.setObjectName("re_button")
self.buttonGroup_2 = QtWidgets.QButtonGroup(ascii_reader)
self.buttonGroup_2.setObjectName("buttonGroup_2")
self.buttonGroup_2.addButton(self.radioButton)
self.verticalLayout_3.addWidget(self.radioButton)
self.lineEdit = QtWidgets.QLineEdit(self.tabWidgetPage1)
self.lineEdit.setObjectName("lineEdit")
self.verticalLayout_3.addWidget(self.lineEdit)
self.radioButton_2 = QtWidgets.QRadioButton(self.tabWidgetPage1)
self.radioButton_2.setObjectName("radioButton_2")
self.buttonGroup_2.addButton(self.radioButton_2)
self.verticalLayout_3.addWidget(self.radioButton_2)
self.lineEdit_2 = QtWidgets.QLineEdit(self.tabWidgetPage1)
self.lineEdit_2.setObjectName("lineEdit_2")
self.verticalLayout_3.addWidget(self.lineEdit_2)
self.radioButton_3 = QtWidgets.QRadioButton(self.tabWidgetPage1)
self.radioButton_3.setObjectName("radioButton_3")
self.buttonGroup_2.addButton(self.radioButton_3)
self.verticalLayout_3.addWidget(self.radioButton_3)
self.spinBox = QtWidgets.QSpinBox(self.tabWidgetPage1)
self.spinBox.setObjectName("spinBox")
self.verticalLayout_3.addWidget(self.spinBox)
self.buttonGroup_2.addButton(self.re_button)
self.gridLayout.addWidget(self.re_button, 1, 0, 1, 1)
self.custom_input = QtWidgets.QLineEdit(self.tabWidgetPage1)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.custom_input.sizePolicy().hasHeightForWidth())
self.custom_input.setSizePolicy(sizePolicy)
self.custom_input.setObjectName("custom_input")
self.gridLayout.addWidget(self.custom_input, 2, 1, 1, 1)
self.custom_button = QtWidgets.QRadioButton(self.tabWidgetPage1)
self.custom_button.setObjectName("custom_button")
self.buttonGroup_2.addButton(self.custom_button)
self.gridLayout.addWidget(self.custom_button, 2, 0, 1, 1)
self.label_8 = QtWidgets.QLabel(self.tabWidgetPage1)
self.label_8.setWordWrap(True)
self.label_8.setObjectName("label_8")
self.gridLayout.addWidget(self.label_8, 0, 0, 1, 4)
self.verticalLayout_3.addLayout(self.gridLayout)
self.groupBox_2 = QtWidgets.QGroupBox(self.tabWidgetPage1)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
@ -330,10 +342,11 @@ class Ui_ascii_reader(object):
self.label_5.setText(_translate("ascii_reader", "<html><head/><body><p>Δy</p></body></html>"))
self.x_label.setText(_translate("ascii_reader", "x"))
self.dsdfsf.setText(_translate("ascii_reader", "Numerical value"))
self.label_9.setText(_translate("ascii_reader", "Match index"))
self.regex_input.setToolTip(_translate("ascii_reader", "<html><head/><body><p>Token:<br/>[abc]: Matches any of a, b, or c<br/>[a-z]: Matches any digit in the range a-z<br/>\\d: Matches any digit in the range 0-9 (equal to [0-9}</p><p>Quantifiers:<br/>a*: 0 or more of a<br/>a*: 1 or more of a<br/>a?: 0 or 1 of a</p></body></html>"))
self.re_button.setText(_translate("ascii_reader", "Regex"))
self.custom_button.setText(_translate("ascii_reader", "Custom value"))
self.label_8.setText(_translate("ascii_reader", "Filename"))
self.radioButton.setText(_translate("ascii_reader", "Regex"))
self.radioButton_2.setText(_translate("ascii_reader", "Custom value"))
self.radioButton_3.setText(_translate("ascii_reader", "Position in filename"))
self.groupBox_2.setTitle(_translate("ascii_reader", "Preview"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabWidgetPage1), _translate("ascii_reader", "Data"))
self.label_2.setText(_translate("ascii_reader", "Number of delays"))