Fri, 07 Jun 2024 11:11:57 +0200
Regenerated the Ui_*.py files with project relative paths.
# Form implementation generated from reading ui file 'src/eric7/Plugins/WizardPlugins/PyRegExpWizard/PyRegExpWizardDialog.ui' # # Created by: PyQt6 UI code generator 6.7.0 # # WARNING: Any manual changes made to this file will be lost when pyuic6 is # run again. Do not edit this file unless you know what you are doing. from PyQt6 import QtCore, QtGui, QtWidgets class Ui_PyRegExpWizardDialog(object): def setupUi(self, PyRegExpWizardDialog): PyRegExpWizardDialog.setObjectName("PyRegExpWizardDialog") PyRegExpWizardDialog.resize(750, 700) PyRegExpWizardDialog.setProperty("sizeGripEnabled", True) self.verticalLayout_4 = QtWidgets.QVBoxLayout(PyRegExpWizardDialog) self.verticalLayout_4.setObjectName("verticalLayout_4") self.hboxlayout = QtWidgets.QHBoxLayout() self.hboxlayout.setObjectName("hboxlayout") self.variableLabel = QtWidgets.QLabel(parent=PyRegExpWizardDialog) self.variableLabel.setObjectName("variableLabel") self.hboxlayout.addWidget(self.variableLabel) self.variableLineEdit = QtWidgets.QLineEdit(parent=PyRegExpWizardDialog) self.variableLineEdit.setObjectName("variableLineEdit") self.hboxlayout.addWidget(self.variableLineEdit) self.verticalLayout_4.addLayout(self.hboxlayout) self.importCheckBox = QtWidgets.QCheckBox(parent=PyRegExpWizardDialog) self.importCheckBox.setObjectName("importCheckBox") self.verticalLayout_4.addWidget(self.importCheckBox) self.variableLine = QtWidgets.QFrame(parent=PyRegExpWizardDialog) self.variableLine.setFrameShape(QtWidgets.QFrame.Shape.HLine) self.variableLine.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) self.variableLine.setFrameShape(QtWidgets.QFrame.Shape.HLine) self.variableLine.setObjectName("variableLine") self.verticalLayout_4.addWidget(self.variableLine) self.hboxlayout1 = QtWidgets.QHBoxLayout() self.hboxlayout1.setObjectName("hboxlayout1") self.commentButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.commentButton.setObjectName("commentButton") self.hboxlayout1.addWidget(self.commentButton) self.charButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.charButton.setObjectName("charButton") self.hboxlayout1.addWidget(self.charButton) self.anycharButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.anycharButton.setObjectName("anycharButton") self.hboxlayout1.addWidget(self.anycharButton) self.repeatButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.repeatButton.setObjectName("repeatButton") self.hboxlayout1.addWidget(self.repeatButton) self.nonGroupButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.nonGroupButton.setObjectName("nonGroupButton") self.hboxlayout1.addWidget(self.nonGroupButton) self.groupButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.groupButton.setObjectName("groupButton") self.hboxlayout1.addWidget(self.groupButton) self.namedGroupButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.namedGroupButton.setObjectName("namedGroupButton") self.hboxlayout1.addWidget(self.namedGroupButton) self.namedReferenceButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.namedReferenceButton.setObjectName("namedReferenceButton") self.hboxlayout1.addWidget(self.namedReferenceButton) self.altnButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.altnButton.setObjectName("altnButton") self.hboxlayout1.addWidget(self.altnButton) self.beglineButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.beglineButton.setObjectName("beglineButton") self.hboxlayout1.addWidget(self.beglineButton) self.endlineButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.endlineButton.setObjectName("endlineButton") self.hboxlayout1.addWidget(self.endlineButton) self.wordboundButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.wordboundButton.setObjectName("wordboundButton") self.hboxlayout1.addWidget(self.wordboundButton) self.nonwordboundButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.nonwordboundButton.setObjectName("nonwordboundButton") self.hboxlayout1.addWidget(self.nonwordboundButton) self.poslookaheadButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.poslookaheadButton.setObjectName("poslookaheadButton") self.hboxlayout1.addWidget(self.poslookaheadButton) self.neglookaheadButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.neglookaheadButton.setObjectName("neglookaheadButton") self.hboxlayout1.addWidget(self.neglookaheadButton) self.poslookbehindButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.poslookbehindButton.setObjectName("poslookbehindButton") self.hboxlayout1.addWidget(self.poslookbehindButton) self.neglookbehindButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.neglookbehindButton.setObjectName("neglookbehindButton") self.hboxlayout1.addWidget(self.neglookbehindButton) spacerItem = QtWidgets.QSpacerItem(16, 20, QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Minimum) self.hboxlayout1.addItem(spacerItem) self.undoButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.undoButton.setObjectName("undoButton") self.hboxlayout1.addWidget(self.undoButton) self.redoButton = QtWidgets.QToolButton(parent=PyRegExpWizardDialog) self.redoButton.setObjectName("redoButton") self.hboxlayout1.addWidget(self.redoButton) spacerItem1 = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) self.hboxlayout1.addItem(spacerItem1) self.verticalLayout_4.addLayout(self.hboxlayout1) self.splitter_2 = QtWidgets.QSplitter(parent=PyRegExpWizardDialog) self.splitter_2.setOrientation(QtCore.Qt.Orientation.Vertical) self.splitter_2.setChildrenCollapsible(False) self.splitter_2.setObjectName("splitter_2") self.widget = QtWidgets.QWidget(parent=self.splitter_2) self.widget.setObjectName("widget") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.widget) self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) self.verticalLayout_3.setObjectName("verticalLayout_3") self.splitter = QtWidgets.QSplitter(parent=self.widget) self.splitter.setOrientation(QtCore.Qt.Orientation.Vertical) self.splitter.setChildrenCollapsible(False) self.splitter.setObjectName("splitter") self.widget1 = QtWidgets.QWidget(parent=self.splitter) self.widget1.setObjectName("widget1") self.verticalLayout = QtWidgets.QVBoxLayout(self.widget1) self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.textLabel1 = QtWidgets.QLabel(parent=self.widget1) self.textLabel1.setAlignment(QtCore.Qt.AlignmentFlag.AlignTop) self.textLabel1.setObjectName("textLabel1") self.verticalLayout.addWidget(self.textLabel1) self.regexpTextEdit = QtWidgets.QTextEdit(parent=self.widget1) self.regexpTextEdit.setAcceptRichText(False) self.regexpTextEdit.setObjectName("regexpTextEdit") self.verticalLayout.addWidget(self.regexpTextEdit) self.widget2 = QtWidgets.QWidget(parent=self.splitter) self.widget2.setObjectName("widget2") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.widget2) self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) self.verticalLayout_2.setObjectName("verticalLayout_2") self.textLabel2 = QtWidgets.QLabel(parent=self.widget2) self.textLabel2.setAlignment(QtCore.Qt.AlignmentFlag.AlignTop) self.textLabel2.setObjectName("textLabel2") self.verticalLayout_2.addWidget(self.textLabel2) self.textTextEdit = QtWidgets.QTextEdit(parent=self.widget2) self.textTextEdit.setAcceptRichText(False) self.textTextEdit.setObjectName("textTextEdit") self.verticalLayout_2.addWidget(self.textTextEdit) self.verticalLayout_3.addWidget(self.splitter) self.gridlayout = QtWidgets.QGridLayout() self.gridlayout.setObjectName("gridlayout") self.multilineCheckBox = QtWidgets.QCheckBox(parent=self.widget) self.multilineCheckBox.setObjectName("multilineCheckBox") self.gridlayout.addWidget(self.multilineCheckBox, 0, 1, 1, 1) self.verboseCheckBox = QtWidgets.QCheckBox(parent=self.widget) self.verboseCheckBox.setObjectName("verboseCheckBox") self.gridlayout.addWidget(self.verboseCheckBox, 1, 0, 1, 1) self.caseSensitiveCheckBox = QtWidgets.QCheckBox(parent=self.widget) self.caseSensitiveCheckBox.setChecked(True) self.caseSensitiveCheckBox.setObjectName("caseSensitiveCheckBox") self.gridlayout.addWidget(self.caseSensitiveCheckBox, 0, 0, 1, 1) self.unicodeCheckBox = QtWidgets.QCheckBox(parent=self.widget) self.unicodeCheckBox.setObjectName("unicodeCheckBox") self.gridlayout.addWidget(self.unicodeCheckBox, 1, 1, 1, 1) self.dotallCheckBox = QtWidgets.QCheckBox(parent=self.widget) self.dotallCheckBox.setObjectName("dotallCheckBox") self.gridlayout.addWidget(self.dotallCheckBox, 0, 2, 1, 1) self.verticalLayout_3.addLayout(self.gridlayout) self.resultTable = QtWidgets.QTableWidget(parent=self.splitter_2) self.resultTable.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers) self.resultTable.setObjectName("resultTable") self.resultTable.setColumnCount(0) self.resultTable.setRowCount(0) self.verticalLayout_4.addWidget(self.splitter_2) self.buttonBox = QtWidgets.QDialogButtonBox(parent=PyRegExpWizardDialog) self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal) self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Close|QtWidgets.QDialogButtonBox.StandardButton.Ok) self.buttonBox.setObjectName("buttonBox") self.verticalLayout_4.addWidget(self.buttonBox) self.retranslateUi(PyRegExpWizardDialog) QtCore.QMetaObject.connectSlotsByName(PyRegExpWizardDialog) PyRegExpWizardDialog.setTabOrder(self.variableLineEdit, self.importCheckBox) PyRegExpWizardDialog.setTabOrder(self.importCheckBox, self.commentButton) PyRegExpWizardDialog.setTabOrder(self.commentButton, self.charButton) PyRegExpWizardDialog.setTabOrder(self.charButton, self.anycharButton) PyRegExpWizardDialog.setTabOrder(self.anycharButton, self.repeatButton) PyRegExpWizardDialog.setTabOrder(self.repeatButton, self.nonGroupButton) PyRegExpWizardDialog.setTabOrder(self.nonGroupButton, self.groupButton) PyRegExpWizardDialog.setTabOrder(self.groupButton, self.namedGroupButton) PyRegExpWizardDialog.setTabOrder(self.namedGroupButton, self.namedReferenceButton) PyRegExpWizardDialog.setTabOrder(self.namedReferenceButton, self.altnButton) PyRegExpWizardDialog.setTabOrder(self.altnButton, self.beglineButton) PyRegExpWizardDialog.setTabOrder(self.beglineButton, self.endlineButton) PyRegExpWizardDialog.setTabOrder(self.endlineButton, self.wordboundButton) PyRegExpWizardDialog.setTabOrder(self.wordboundButton, self.nonwordboundButton) PyRegExpWizardDialog.setTabOrder(self.nonwordboundButton, self.poslookaheadButton) PyRegExpWizardDialog.setTabOrder(self.poslookaheadButton, self.neglookaheadButton) PyRegExpWizardDialog.setTabOrder(self.neglookaheadButton, self.poslookbehindButton) PyRegExpWizardDialog.setTabOrder(self.poslookbehindButton, self.neglookbehindButton) PyRegExpWizardDialog.setTabOrder(self.neglookbehindButton, self.undoButton) PyRegExpWizardDialog.setTabOrder(self.undoButton, self.redoButton) PyRegExpWizardDialog.setTabOrder(self.redoButton, self.regexpTextEdit) PyRegExpWizardDialog.setTabOrder(self.regexpTextEdit, self.textTextEdit) PyRegExpWizardDialog.setTabOrder(self.textTextEdit, self.caseSensitiveCheckBox) PyRegExpWizardDialog.setTabOrder(self.caseSensitiveCheckBox, self.multilineCheckBox) PyRegExpWizardDialog.setTabOrder(self.multilineCheckBox, self.dotallCheckBox) PyRegExpWizardDialog.setTabOrder(self.dotallCheckBox, self.verboseCheckBox) PyRegExpWizardDialog.setTabOrder(self.verboseCheckBox, self.unicodeCheckBox) PyRegExpWizardDialog.setTabOrder(self.unicodeCheckBox, self.resultTable) def retranslateUi(self, PyRegExpWizardDialog): _translate = QtCore.QCoreApplication.translate PyRegExpWizardDialog.setWindowTitle(_translate("PyRegExpWizardDialog", "Python re Wizard")) self.variableLabel.setText(_translate("PyRegExpWizardDialog", "Variable Name:")) self.importCheckBox.setText(_translate("PyRegExpWizardDialog", "Include import statement")) self.commentButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Comment: (?#)</b>\n" "<p>Insert some comment inside your regexp.</p>")) self.commentButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Comment: (?#)</b>\n" "<p>Insert some comment inside your regexp.The regex engine ignores everything after the (?# until the first closing round bracket. \n" "The following example could clarify the regexp which match a valid date: </p>\n" "<p>(?#year)(19|20)\\d\\d[- /.](?#month)(0[1-9]|1[012])[- /.](?#day)(0[1-9]|[12][0-9]|3[01])</p>")) self.charButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Single character of a range (e.g. [abcd])</b><p>Select a single character of a range via a specific dialog.</p>")) self.charButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Single character of a range (e.g. [abcd])</b><p>Select a single character of a range via a specific dialog. This dialog will help to edit the range of characters and add some specific conditions.</p>s")) self.anycharButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Any character: \'.\'</b>\n" "<p>Select to insert a dot (.) in your regexp.</p>")) self.anycharButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Any character: \'.\'</b>\n" "<p>Select to insert a dot (.) in your regexp. The dot matches a single character, except line break characters (by default). \n" "E.g. \'gr.y\' matches \'gray\', \'grey\', \'gr%y\', etc. Use the dot sparingly. Often, a character class or negated\n" "character class is faster and more precise.</p>")) self.repeatButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Repeat contents</b>\n" "<p>Select a repetition condition via a specific dialog. This dialog will help to specify the allowed range for repetitions.</p>")) self.repeatButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Repeat contents</b>\n" "<p>Select a repetition condition via a specific dialog. This dialog will help to specify the allowed range for repetitions.</p>")) self.nonGroupButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Non capturing parentheses: (?:)</b>\n" "<p>Select to insert some non capturing brackets.</p>")) self.nonGroupButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Non capturing parentheses: (?:)</b>\n" "<p>Select to insert some non capturing brackets. It can be used to apply a regexp quantifier (eg. \'?\' or \'+\') to the entire\n" "group of characters inside the brakets. E.g. the regex \'Set(?:Value)?\' matches \'Set\' or \'SetValue\'. The \'?:\' inside the brakets\n" "means that the content of the match (called the backreference) is not stored for further use.</p>")) self.groupButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Group: ()</b>\n" "<p>Select to insert some capturing brackets.</p>")) self.groupButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Group: ()</b>\n" "<p>Select to insert some capturing brackets. They can be used to apply a regexp quantifier (e.g. \'?\' or \'+\') to the entire group of \n" "characters inside the brakets. E.g. the regex \'Set(Value)?\' matches \'Set\' or \'SetValue\'. Contrary to non-capturing parentheses, \n" "the backreference matched inside the brakets is stored for further use (i.e. \'Value\' in the second example above). \n" "One can access the backereference with the \'\\1\' expression. </p>\n" "<p>E.g. \'([a-c])x\\1x\\1\' will match \'axaxa\', \'bxbxb\' and \'cxcxc\'.</p>")) self.namedGroupButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Named group: (?P<<i>groupname</i>>)</b>\n" "<p>Select to insert some named group brackets.</p>")) self.namedGroupButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Named group: (?P<<i>groupname</i>>)</b>\n" "<p>Select to insert some named group brackets. Usage is similar to standard group parentheses as the matched \n" "backreference is also stored for further usage. The difference is that a name is given to the match. This is useful when \n" "the work to do on the match becomes a bit complicated. One can access the backreference via the group name (i.e (?P=<i>groupname</i>)).\n" "E.g. (?P<foo>[abc])x(?P=foo)x(?P=foo)x matches \'axaxax\',\'bxbxbx\' or \'cxcxcx\' (\'foo\' is the group name)</p>")) self.namedReferenceButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Reference named group: (?P=<i>groupname</i>)</b>\n" "<p>Select to insert a reference to named group previously declared.</p>")) self.namedReferenceButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Reference named group: (?P=<i>groupname</i>)</b>\n" "<p>Select to insert a reference to named group previously declared. Each reference group refers to the match\n" " found by the corresponding named group. In the following example, (?P=foo) may refer to the charaters \'a\',\'b\' or \'c\'.</p>\n" "<p>E.g. (?P<foo>[abc])x(?P=foo)x(?P=foo)x matches \'axaxax\',\'bxbxbx\' or \'cxcxcx\'.</p>")) self.altnButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Alternatives: \'|\'</b>\n" "<p>Select to insert the alternation symbol \'|\'. </p>")) self.altnButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Alternatives: \'|\'</b>\n" "<p>Select to insert the alternation symbol \'|\'. The alternation is used to match a single regular expression out of \n" "several possible regular expressions. E.g. \'cat|dog|mouse|fish\' matches words containing the word \'cat\', \'dog\',\'mouse\' or \'fish\'.\n" "Be aware that in the above example, the alternatives refer to whole or part of words. If you want to match exactly the\n" " words \'cat\', \'dog\', ... you should express the fact that you only want to match complete words: \'\\b(cat|dog|mouse|fish)\\b\'</p>")) self.beglineButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Begin of line: \'^\'</b>\n" "<p>Select to insert the start line character (^).</p>")) self.beglineButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Begin of line: \'^\'</b>\n" "<p>Select to insert the start line character (^). It is used to find some expressions at the begining of lines.\n" "E.g. \'^[A-Z]\' match lines starting with a capitalized character. </p>")) self.endlineButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>End of line: \'$\'</b>\n" "<p>Select to insert the end of line character ($).</p>")) self.endlineButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>End of line: \'$\'</b>\n" "<p>Select to insert the end of line character ($). It is used to find some expressions at the end of lines.</p>")) self.wordboundButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Word boundary</b>\n" "<p>Select to insert the word boudary character (\\b).</p>")) self.wordboundButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Word boundary</b>\n" "<p>Select to insert the word boudary character (\\b). This character is used to express the fact that word \n" "must begin or end at this position. E.g. \'\\bcat\\b\' matches exactly the word \'cat\' while \'concatenation\' is ignored.</p>")) self.nonwordboundButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Non word boundary</b>\n" "<p>Select to insert the word boudary character (\\B). \\B is the negated version of \\b.</p>")) self.nonwordboundButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Non word boundary</b>\n" "<p>Select to insert the word boudary character (\\B). \\B is the negated version of \\b. \\B matches at every position where \\b \n" "does not. Effectively, \\B matches at any position between two word characters as well as at any position between two non-word characters.</p>")) self.poslookaheadButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Positive lookahead: (?=<i>regexpr</i>)</b>\n" "<p>Select to insert the positive lookhead brackets.</p>")) self.poslookaheadButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Positive lookahead: (?=<i>regexpr</i>)</b>\n" "<p>Select to insert the positive lookhead brackets. Basically, positive lookhead is used to match a character only if followed by another one.\n" "Writting \'q(?=u)\' means that you want to match the \'q\' character only if it is followed by \'u\'. In this statement \'u\' is a trivial \n" "regexp which may be replaced by a more complex expression; q(?=[abc])\' will match a \'q\' if followed by either \'a\', \'b\' or \'c\'.</p>")) self.neglookaheadButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Negative lookahead: (?!<i>regexpr</i>)</b>\n" "<p>Select to insert the negative lookhead brackets.</p>")) self.neglookaheadButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Negative lookahead: (?!<i>regexpr</i>)</b>\n" "<p>Select to insert the negative lookhead brackets. Basically, negative lookhead is used to match a character only if it is not\n" "followed by a another one. Writting \'q(?!u)\' means that you want to match \'q\' only if it is not followed by \'u\'. In this statement, \'u\' is a\n" "trivial regexp which may be replaced by a more complex expression; \'q(?![abc])\' will match a \'q\' if it is followed by anything else than \'a\', \'b\' or \'c\'.</p>")) self.poslookbehindButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Positive lookbehind: (?<=<i>regexpr</i>)</b>\n" "<p>Select to insert the positive lookbehind brackets.</p>")) self.poslookbehindButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Positive lookbehind: (?<=<i>regexpr</i>)</b>\n" "<p>Select to insert the positive lookbehind brackets. Lookbehind has the same effect as lookahead, but works backwards. \n" "It is used to match a character only if preceded by another one. Writting \'(?<=u)q\' means that you want to match the \'q\' character \n" "only if it is preceded by \'u\'. As with lookhead, \'u\' may be replaced by a more complex expression; \'(?<=[abc])q\' will match a \'q\' if preceded by either \'a\', \'b\' or \'c\'.</p>")) self.neglookbehindButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Negative lookbehind (?<!<i>regexpr</i>)</b>\n" "<p>Select to insert the negative lookbehind brackets.</p>")) self.neglookbehindButton.setWhatsThis(_translate("PyRegExpWizardDialog", "<b>Negative lookbehind (?<!<i>regexpr</i>)</b>\n" "<p>Select to insert the negative lookbehind brackets. Lookbehind has the same effect as lookahead, \n" "but works backwards. It is used to match a character only if not preceded by another one. Writting \'(?<!u)q\' means that you want to match the \'q\' \n" "character only if it is not preceded by \'u\'. As other lookaround, \'u\' may be replaced by a more complex \n" "expression; \'(?<![abc])q\' will match a \'q\' only if not preceded by either \'a\', \'b\' nor \'c\'.</p>")) self.undoButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Undo last edit</b>")) self.redoButton.setToolTip(_translate("PyRegExpWizardDialog", "<b>Redo last edit</b>")) self.textLabel1.setText(_translate("PyRegExpWizardDialog", "Regexp:")) self.textLabel2.setText(_translate("PyRegExpWizardDialog", "Text:")) self.multilineCheckBox.setToolTip(_translate("PyRegExpWizardDialog", "\"^\" matches beginning of line, \"$\" matches end of line")) self.multilineCheckBox.setText(_translate("PyRegExpWizardDialog", "Match Linebreaks")) self.verboseCheckBox.setText(_translate("PyRegExpWizardDialog", "Verbose Regexp")) self.caseSensitiveCheckBox.setText(_translate("PyRegExpWizardDialog", "Case Sensitive")) self.unicodeCheckBox.setText(_translate("PyRegExpWizardDialog", "ASCII")) self.dotallCheckBox.setToolTip(_translate("PyRegExpWizardDialog", "\".\" matches linebreaks as well")) self.dotallCheckBox.setText(_translate("PyRegExpWizardDialog", "Dot matches Linebreak"))