src/eric7/Plugins/WizardPlugins/QRegularExpressionWizard/QRegularExpressionWizardServer.py

branch
eric7
changeset 9482
a2bc06a54d9d
parent 9221
bf71ee032bb4
child 9653
e67609152c5e
--- a/src/eric7/Plugins/WizardPlugins/QRegularExpressionWizard/QRegularExpressionWizardServer.py	Sun Nov 06 11:22:39 2022 +0100
+++ b/src/eric7/Plugins/WizardPlugins/QRegularExpressionWizard/QRegularExpressionWizardServer.py	Mon Nov 07 17:19:58 2022 +0100
@@ -10,6 +10,8 @@
 import json
 import sys
 
+from PyQt6.QtCore import QRegularExpression
+
 
 def rxValidate(regexp, options):
     """
@@ -20,36 +22,29 @@
     @return tuple of flag indicating validity (boolean), error
         string (string) and error offset (integer)
     """
-    try:
-        from PyQt6.QtCore import QRegularExpression
+    rxOptions = QRegularExpression.PatternOption.NoPatternOption
+    if "CaseInsensitiveOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.CaseInsensitiveOption
+    if "MultilineOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.MultilineOption
+    if "DotMatchesEverythingOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.DotMatchesEverythingOption
+    if "ExtendedPatternSyntaxOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.ExtendedPatternSyntaxOption
+    if "InvertedGreedinessOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.InvertedGreedinessOption
+    if "UseUnicodePropertiesOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.UseUnicodePropertiesOption
+    if "DontCaptureOption" in options:
+        rxOptions |= QRegularExpression.PatternOption.DontCaptureOption
 
-        rxOptions = QRegularExpression.PatternOption.NoPatternOption
-        if "CaseInsensitiveOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.CaseInsensitiveOption
-        if "MultilineOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.MultilineOption
-        if "DotMatchesEverythingOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.DotMatchesEverythingOption
-        if "ExtendedPatternSyntaxOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.ExtendedPatternSyntaxOption
-        if "InvertedGreedinessOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.InvertedGreedinessOption
-        if "UseUnicodePropertiesOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.UseUnicodePropertiesOption
-        if "DontCaptureOption" in options:
-            rxOptions |= QRegularExpression.PatternOption.DontCaptureOption
-
-        error = ""
-        errorOffset = -1
-        re = QRegularExpression(regexp, rxOptions)
-        valid = re.isValid()
-        if not valid:
-            error = re.errorString()
-            errorOffset = re.patternErrorOffset()
-    except ImportError:
-        valid = False
-        error = "ImportError"
-        errorOffset = 0
+    error = ""
+    errorOffset = -1
+    re = QRegularExpression(regexp, rxOptions)
+    valid = re.isValid()
+    if not valid:
+        error = re.errorString()
+        errorOffset = re.patternErrorOffset()
 
     return valid, error, errorOffset
 
@@ -71,8 +66,6 @@
     if not valid:
         return valid, error, errorOffset
 
-    from PyQt6.QtCore import QRegularExpression
-
     rxOptions = QRegularExpression.PatternOption.NoPatternOption
     if "CaseInsensitiveOption" in options:
         rxOptions |= QRegularExpression.PatternOption.CaseInsensitiveOption

eric ide

mercurial