PythonExtensionsCollection 0.2.0__py3-none-any.whl → 0.13.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. PythonExtensionsCollection/Comparison/CComparison.py +341 -0
  2. PythonExtensionsCollection/Comparison/__init__.py +13 -0
  3. PythonExtensionsCollection/File/CFile.py +326 -106
  4. PythonExtensionsCollection/File/__init__.py +1 -1
  5. PythonExtensionsCollection/Folder/CFolder.py +460 -0
  6. PythonExtensionsCollection/Folder/__init__.py +13 -0
  7. PythonExtensionsCollection/PythonExtensionsCollection.pdf +0 -0
  8. PythonExtensionsCollection/String/CString.py +128 -344
  9. PythonExtensionsCollection/String/__init__.py +1 -1
  10. PythonExtensionsCollection/Utils/CUtils.py +77 -74
  11. PythonExtensionsCollection/Utils/__init__.py +1 -1
  12. PythonExtensionsCollection/__init__.py +1 -1
  13. PythonExtensionsCollection/version.py +23 -0
  14. {PythonExtensionsCollection-0.2.0.dist-info → PythonExtensionsCollection-0.13.0.dist-info}/METADATA +57 -44
  15. PythonExtensionsCollection-0.13.0.dist-info/RECORD +18 -0
  16. {PythonExtensionsCollection-0.2.0.dist-info → PythonExtensionsCollection-0.13.0.dist-info}/WHEEL +1 -1
  17. PythonExtensionsCollection/doc/.buildinfo +0 -4
  18. PythonExtensionsCollection/doc/File.html +0 -315
  19. PythonExtensionsCollection/doc/String.html +0 -590
  20. PythonExtensionsCollection/doc/Utils.html +0 -209
  21. PythonExtensionsCollection/doc/_modules/PythonExtensionsCollection/File/CFile.html +0 -960
  22. PythonExtensionsCollection/doc/_modules/PythonExtensionsCollection/String/CString.html +0 -1221
  23. PythonExtensionsCollection/doc/_modules/PythonExtensionsCollection/Utils/CUtils.html +0 -431
  24. PythonExtensionsCollection/doc/_modules/index.html +0 -106
  25. PythonExtensionsCollection/doc/_sources/File.rst.txt +0 -28
  26. PythonExtensionsCollection/doc/_sources/String.rst.txt +0 -28
  27. PythonExtensionsCollection/doc/_sources/Utils.rst.txt +0 -28
  28. PythonExtensionsCollection/doc/_sources/additional_doc/Introduction.rst.txt +0 -365
  29. PythonExtensionsCollection/doc/_sources/index.rst.txt +0 -27
  30. PythonExtensionsCollection/doc/_static/_sphinx_javascript_frameworks_compat.js +0 -134
  31. PythonExtensionsCollection/doc/_static/alabaster.css +0 -701
  32. PythonExtensionsCollection/doc/_static/basic.css +0 -930
  33. PythonExtensionsCollection/doc/_static/custom.css +0 -1
  34. PythonExtensionsCollection/doc/_static/doctools.js +0 -264
  35. PythonExtensionsCollection/doc/_static/documentation_options.js +0 -14
  36. PythonExtensionsCollection/doc/_static/file.png +0 -0
  37. PythonExtensionsCollection/doc/_static/jquery-3.6.0.js +0 -10881
  38. PythonExtensionsCollection/doc/_static/jquery.js +0 -2
  39. PythonExtensionsCollection/doc/_static/language_data.js +0 -199
  40. PythonExtensionsCollection/doc/_static/minus.png +0 -0
  41. PythonExtensionsCollection/doc/_static/plus.png +0 -0
  42. PythonExtensionsCollection/doc/_static/pygments.css +0 -82
  43. PythonExtensionsCollection/doc/_static/searchtools.js +0 -531
  44. PythonExtensionsCollection/doc/_static/underscore-1.13.1.js +0 -2042
  45. PythonExtensionsCollection/doc/_static/underscore.js +0 -6
  46. PythonExtensionsCollection/doc/additional_doc/Introduction.html +0 -365
  47. PythonExtensionsCollection/doc/genindex.html +0 -292
  48. PythonExtensionsCollection/doc/index.html +0 -123
  49. PythonExtensionsCollection/doc/objects.inv +0 -0
  50. PythonExtensionsCollection/doc/py-modindex.html +0 -138
  51. PythonExtensionsCollection/doc/search.html +0 -127
  52. PythonExtensionsCollection/doc/searchindex.js +0 -1
  53. PythonExtensionsCollection-0.2.0.dist-info/RECORD +0 -48
  54. {PythonExtensionsCollection-0.2.0.dist-info → PythonExtensionsCollection-0.13.0.dist-info}/LICENSE +0 -0
  55. {PythonExtensionsCollection-0.2.0.dist-info → PythonExtensionsCollection-0.13.0.dist-info}/top_level.txt +0 -0
@@ -1,590 +0,0 @@
1
-
2
- <!DOCTYPE html>
3
-
4
- <html lang="en">
5
- <head>
6
- <meta charset="utf-8" />
7
- <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
8
-
9
- <title>3. CString module &#8212; Python Extensions Collection documentation</title>
10
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
11
- <link rel="stylesheet" type="text/css" href="_static/alabaster.css" />
12
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
13
- <script src="_static/jquery.js"></script>
14
- <script src="_static/underscore.js"></script>
15
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
16
- <script src="_static/doctools.js"></script>
17
- <link rel="index" title="Index" href="genindex.html" />
18
- <link rel="search" title="Search" href="search.html" />
19
- <link rel="next" title="4. CUtils module" href="Utils.html" />
20
- <link rel="prev" title="1. Introduction" href="additional_doc/Introduction.html" />
21
-
22
- <link rel="stylesheet" href="_static/custom.css" type="text/css" />
23
-
24
-
25
- <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
26
-
27
- </head><body>
28
-
29
-
30
- <div class="document">
31
- <div class="documentwrapper">
32
- <div class="bodywrapper">
33
-
34
-
35
- <div class="body" role="main">
36
-
37
- <section class="dl-parameters" id="module-PythonExtensionsCollection.String.CString">
38
- <span id="cstring-module"></span><h1><span class="section-number">3. </span>CString module<a class="headerlink" href="#module-PythonExtensionsCollection.String.CString" title="Permalink to this heading">¶</a></h1>
39
- <dl class="py class">
40
- <dt class="sig sig-object py" id="PythonExtensionsCollection.String.CString.CString">
41
- <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">PythonExtensionsCollection.String.CString.</span></span><span class="sig-name descname"><span class="pre">CString</span></span><a class="reference internal" href="_modules/PythonExtensionsCollection/String/CString.html#CString"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#PythonExtensionsCollection.String.CString.CString" title="Permalink to this definition">¶</a></dt>
42
- <dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
43
- <p>Contains some string computation methods like e.g. normalizing a path.</p>
44
- <dl class="py method">
45
- <dt class="sig sig-object py" id="PythonExtensionsCollection.String.CString.CString.DetectParentPath">
46
- <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DetectParentPath</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sStartPath</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sFolderName</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sFileName</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/PythonExtensionsCollection/String/CString.html#CString.DetectParentPath"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#PythonExtensionsCollection.String.CString.CString.DetectParentPath" title="Permalink to this definition">¶</a></dt>
47
- <dd><div class="line-block">
48
- <div class="line"><br /></div>
49
- </div>
50
- <p><strong>Method:</strong></p>
51
- <p><strong>DetectParentPath</strong></p>
52
- <blockquote>
53
- <div><p>Computes the path to any parent folder inside a given path. Optionally DetectParentPath is able
54
- to search for files inside the parent folder.</p>
55
- </div></blockquote>
56
- <p><strong>Args:</strong></p>
57
- <p><strong>sStartPath</strong> (<em>string</em>)</p>
58
- <blockquote>
59
- <div><p>The path in which to search for a parent folder</p>
60
- </div></blockquote>
61
- <p><strong>sFolderName</strong> (<em>string</em>)</p>
62
- <blockquote>
63
- <div><p>The name of the folder to search for within <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code>. It is possible to provide more than one folder name separated by semicolon</p>
64
- </div></blockquote>
65
- <p><strong>sFileName</strong> (<em>string, optional</em>)</p>
66
- <blockquote>
67
- <div><p>The name of a file to search within the detected parent folder</p>
68
- </div></blockquote>
69
- <p><strong>Returns:</strong></p>
70
- <p><strong>sDestPath</strong> (<em>string</em>)</p>
71
- <blockquote>
72
- <div><p>Path and name of parent folder found inside <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code>, <code class="docutils literal notranslate"><span class="pre">None</span></code> in case of <code class="docutils literal notranslate"><span class="pre">sFolderName</span></code> is not found inside <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code>.
73
- In case of more than one parent folder is found <code class="docutils literal notranslate"><span class="pre">sDestPath</span></code> contains the first result and <code class="docutils literal notranslate"><span class="pre">listDestPaths</span></code> contains all results.</p>
74
- </div></blockquote>
75
- <p><strong>listDestPaths</strong> (<em>list</em>)</p>
76
- <blockquote>
77
- <div><p>If <code class="docutils literal notranslate"><span class="pre">sFolderName</span></code> contains a single folder name this list contains only one element that is <code class="docutils literal notranslate"><span class="pre">sDestPath</span></code>.
78
- In case of <code class="docutils literal notranslate"><span class="pre">FolderName</span></code> contains a semicolon separated list of several folder names this list contains all found paths of the given folder names.
79
- <code class="docutils literal notranslate"><span class="pre">listDestPaths</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code> (and not an empty list!) in case of <code class="docutils literal notranslate"><span class="pre">sFolderName</span></code> is not found inside <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code>.</p>
80
- </div></blockquote>
81
- <p><strong>sDestFile</strong> (<em>string</em>)</p>
82
- <blockquote>
83
- <div><p>Path and name of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code>, in case of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code> is given and found inside <code class="docutils literal notranslate"><span class="pre">listDestPaths</span></code>.
84
- In case of more than one file is found <code class="docutils literal notranslate"><span class="pre">sDestFile</span></code> contains the first result and <code class="docutils literal notranslate"><span class="pre">listDestFiles</span></code> contains all results.
85
- <code class="docutils literal notranslate"><span class="pre">sDestFile</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code> in case of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code> and also in case of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code> is not found inside <code class="docutils literal notranslate"><span class="pre">listDestPaths</span></code>
86
- (and therefore also in case of <code class="docutils literal notranslate"><span class="pre">sFolderName</span></code> is not found inside <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code>).</p>
87
- </div></blockquote>
88
- <p><strong>listDestFiles</strong> (<em>list</em>)</p>
89
- <blockquote>
90
- <div><p>Contains all positions of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code> found inside <code class="docutils literal notranslate"><span class="pre">listDestPaths</span></code>.
91
- <code class="docutils literal notranslate"><span class="pre">listDestFiles</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code> (and not an empty list!) in case of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code> and also in case of <code class="docutils literal notranslate"><span class="pre">sFileName</span></code>
92
- is not found inside <code class="docutils literal notranslate"><span class="pre">listDestPaths</span></code> (and therefore also in case of <code class="docutils literal notranslate"><span class="pre">sFolderName</span></code> is not found inside <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code>).</p>
93
- </div></blockquote>
94
- <p><strong>sDestPathParent</strong> (<em>string</em>)</p>
95
- <blockquote>
96
- <div><p>The parent folder of <code class="docutils literal notranslate"><span class="pre">sDestPath</span></code>, <code class="docutils literal notranslate"><span class="pre">None</span></code> in case of <code class="docutils literal notranslate"><span class="pre">sFolderName</span></code> is not found inside <code class="docutils literal notranslate"><span class="pre">sStartPath</span></code> (<code class="docutils literal notranslate"><span class="pre">sDestPath</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code>).</p>
97
- </div></blockquote>
98
- <div class="line-block">
99
- <div class="line"><br /></div>
100
- </div>
101
- </dd></dl>
102
-
103
- <dl class="py method">
104
- <dt class="sig sig-object py" id="PythonExtensionsCollection.String.CString.CString.FormatResult">
105
- <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">FormatResult</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sMethod</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bSuccess</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sResult</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/PythonExtensionsCollection/String/CString.html#CString.FormatResult"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#PythonExtensionsCollection.String.CString.CString.FormatResult" title="Permalink to this definition">¶</a></dt>
106
- <dd><div class="line-block">
107
- <div class="line"><br /></div>
108
- </div>
109
- <p><strong>Method:</strong></p>
110
- <p><strong>FormatResult</strong></p>
111
- <blockquote>
112
- <div><p>Formats the result string <code class="docutils literal notranslate"><span class="pre">sResult</span></code> depending on <code class="docutils literal notranslate"><span class="pre">bSuccess</span></code>:</p>
113
- <ul class="simple">
114
- <li><p><code class="docutils literal notranslate"><span class="pre">bSuccess</span></code> is <code class="docutils literal notranslate"><span class="pre">True</span></code> indicates <em>success</em></p></li>
115
- <li><p><code class="docutils literal notranslate"><span class="pre">bSuccess</span></code> is <code class="docutils literal notranslate"><span class="pre">False</span></code> indicates an <em>error</em></p></li>
116
- <li><p><code class="docutils literal notranslate"><span class="pre">bSuccess</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code> indicates an <em>exception</em></p></li>
117
- </ul>
118
- <p>Additionally the name of the method that causes the result, can be provided (<em>optional</em>).
119
- This is useful for debugging.</p>
120
- <p>Returns the formatted result string.</p>
121
- </div></blockquote>
122
- <div class="line-block">
123
- <div class="line"><br /></div>
124
- </div>
125
- </dd></dl>
126
-
127
- <dl class="py method">
128
- <dt class="sig sig-object py" id="PythonExtensionsCollection.String.CString.CString.NormalizePath">
129
- <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NormalizePath</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sPath</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bWin</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sReferencePathAbs</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bConsiderBlanks</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bExpandEnvVars</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bMask</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/PythonExtensionsCollection/String/CString.html#CString.NormalizePath"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#PythonExtensionsCollection.String.CString.CString.NormalizePath" title="Permalink to this definition">¶</a></dt>
130
- <dd><div class="line-block">
131
- <div class="line"><br /></div>
132
- </div>
133
- <p><strong>Method:</strong></p>
134
- <p><strong>NormalizePath</strong></p>
135
- <blockquote>
136
- <div><p>Normalizes local paths, paths to local network resources and internet addresses</p>
137
- </div></blockquote>
138
- <p><strong>Args:</strong></p>
139
- <p><strong>sPath</strong> (<em>string</em>)</p>
140
- <blockquote>
141
- <div><p>The path to be normalized</p>
142
- </div></blockquote>
143
- <p><strong>bWin</strong> (<em>boolean; optional; default: False</em>)</p>
144
- <blockquote>
145
- <div><p>If <code class="docutils literal notranslate"><span class="pre">True</span></code> then returned path contains masked backslashes as separator, otherwise slashes</p>
146
- </div></blockquote>
147
- <p><strong>sReferencePathAbs</strong> (<em>string, optional</em>)</p>
148
- <blockquote>
149
- <div><p>In case of <code class="docutils literal notranslate"><span class="pre">sPath</span></code> is relative and <code class="docutils literal notranslate"><span class="pre">sReferencePathAbs</span></code> (expected to be absolute) is given, then
150
- the returned absolute path is a join of both input paths</p>
151
- </div></blockquote>
152
- <p><strong>bConsiderBlanks</strong> (<em>boolean; optional; default: False</em>)</p>
153
- <blockquote>
154
- <div><p>If <code class="docutils literal notranslate"><span class="pre">True</span></code> then the returned path is encapsulated in quotes - in case of the path contains blanks</p>
155
- </div></blockquote>
156
- <p><strong>bExpandEnvVars</strong> (<em>boolean; optional; default: True</em>)</p>
157
- <blockquote>
158
- <div><p>If <code class="docutils literal notranslate"><span class="pre">True</span></code> then in the returned path environment variables are resolved, otherwise not.</p>
159
- </div></blockquote>
160
- <p><strong>bMask</strong> (<em>boolean; optional; default: True; requires bWin=True</em>)</p>
161
- <blockquote>
162
- <div><p>If <code class="docutils literal notranslate"><span class="pre">bWin</span></code> is <code class="docutils literal notranslate"><span class="pre">True</span></code> and <code class="docutils literal notranslate"><span class="pre">bMask</span></code> is <code class="docutils literal notranslate"><span class="pre">True</span></code> then the returned path contains masked backslashes as separator.
163
- If <code class="docutils literal notranslate"><span class="pre">bWin</span></code> is <code class="docutils literal notranslate"><span class="pre">True</span></code> and <code class="docutils literal notranslate"><span class="pre">bMask</span></code> is <code class="docutils literal notranslate"><span class="pre">False</span></code> then the returned path contains single backslashes only - this might be
164
- required for applications, that are not able to handle masked backslashes. In case of <code class="docutils literal notranslate"><span class="pre">bWin</span></code> is <code class="docutils literal notranslate"><span class="pre">False</span></code> <code class="docutils literal notranslate"><span class="pre">bMask</span></code> has no effect.</p>
165
- </div></blockquote>
166
- <p><strong>Returns:</strong></p>
167
- <p><strong>sPath</strong> (<em>string</em>)</p>
168
- <blockquote>
169
- <div><p>The normalized path (is <code class="docutils literal notranslate"><span class="pre">None</span></code> in case of <code class="docutils literal notranslate"><span class="pre">sPath</span></code> is <code class="docutils literal notranslate"><span class="pre">None</span></code>)</p>
170
- </div></blockquote>
171
- <div class="line-block">
172
- <div class="line"><br /></div>
173
- </div>
174
- </dd></dl>
175
-
176
- <dl class="py method">
177
- <dt class="sig sig-object py" id="PythonExtensionsCollection.String.CString.CString.StringFilter">
178
- <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">StringFilter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sString</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bCaseSensitive</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bSkipBlankStrings</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sComment</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sStartsWith</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sEndsWith</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sStartsNotWith</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sEndsNotWith</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sContains</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sContainsNot</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sInclRegEx</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sExclRegEx</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bDebug</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/PythonExtensionsCollection/String/CString.html#CString.StringFilter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#PythonExtensionsCollection.String.CString.CString.StringFilter" title="Permalink to this definition">¶</a></dt>
179
- <dd><div class="line-block">
180
- <div class="line"><br /></div>
181
- </div>
182
- <p>During the computation of strings there might occur the need to get to know if this string fulfils certain criteria or not.
183
- Such a criterion can e.g. be that the string contains a certain substring. Also an inverse logic might be required:
184
- In this case the criterion is that the string does <strong>not</strong> contain this substring.</p>
185
- <p>It might also be required to combine several criteria to a final conclusion if in total the criterion for a string is fulfilled or not.
186
- For example: The string must start with the string <em>prefix</em> and must also contain either the string <em>substring1</em> or the string <em>substring2</em>
187
- but must also <strong>not</strong> end with the string <em>suffix</em>.</p>
188
- <p>This method provides a bunch of predefined filters that can be used singly or combined to come to a final conclusion if the string fulfils all criteria or not.</p>
189
- <p>The filters are divided into three different types:</p>
190
- <ol class="arabic simple">
191
- <li><p>Filters that are interpreted as raw strings (called ‘standard filters’; no wild cards supported)</p></li>
192
- <li><p>Filters that are interpreted as regular expressions (called ‘regular expression based filters’; the syntax of regular expressions has to be considered)</p></li>
193
- <li><p>Boolean switches (e.g. indicating if also an empty string is accepted or not)</p></li>
194
- </ol>
195
- <p>The input string might contain leading and trailing blanks and tabs. This kind of horizontal space is removed from the input string
196
- before the standard filters start their work (except the regular expression based filters).</p>
197
- <p>The regular expression based filters consider the original input string (including the leading and trailing space).</p>
198
- <p>The outcome is that in case of the leading and trailing space shall be part of the criterion, the regular expression based filters can be used only.</p>
199
- <p>It is possible to decide if the standard filters shall work case sensitive or not. This decision has no effect on the regular expression based filters.</p>
200
- <p>The regular expression based filters always work with the original input string that is not modified in any way.</p>
201
- <p>Except the regular expression based filters it is possible to provide more than one string for every standard filter (must be a semikolon separated list in this case).
202
- A semicolon that shall be part of the search string, has to be masked in this way: <code class="docutils literal notranslate"><span class="pre">\;</span></code>.</p>
203
- <p>This method returns a boolean value that is <code class="docutils literal notranslate"><span class="pre">True</span></code> in case of all criteria are fulfilled, and <code class="docutils literal notranslate"><span class="pre">False</span></code> in case of some or all of them are not fulfilled.</p>
204
- <p>The default value for all filters is <code class="docutils literal notranslate"><span class="pre">None</span></code> (except <code class="docutils literal notranslate"><span class="pre">bSkipBlankStrings</span></code>). In case of a filter value is <code class="docutils literal notranslate"><span class="pre">None</span></code> this filter has no influence on the result.</p>
205
- <p>In case of all filters are <code class="docutils literal notranslate"><span class="pre">None</span></code> (default) the return value is <code class="docutils literal notranslate"><span class="pre">True</span></code> (except the string itself is <code class="docutils literal notranslate"><span class="pre">None</span></code>
206
- or the string is empty and <code class="docutils literal notranslate"><span class="pre">bSkipBlankStrings</span></code> is <code class="docutils literal notranslate"><span class="pre">True</span></code>).</p>
207
- <p>In case of the string is <code class="docutils literal notranslate"><span class="pre">None</span></code>, the return value is <code class="docutils literal notranslate"><span class="pre">False</span></code>, because nothing concrete can be done with <code class="docutils literal notranslate"><span class="pre">None</span></code> strings.</p>
208
- <p>Internally every filter has his own individual acknowledge that indicates if the criterion of this filter is fulfilled or not.</p>
209
- <p>The meaning of <em>criterion fulfilled</em> of a filter is that the filter supports the final return value <code class="docutils literal notranslate"><span class="pre">bAck</span></code> of this method with <code class="docutils literal notranslate"><span class="pre">True</span></code>.</p>
210
- <p>The final return value <code class="docutils literal notranslate"><span class="pre">bAck</span></code> of this method is a logical join (<code class="docutils literal notranslate"><span class="pre">AND</span></code>) of all individual acknowledges (except <code class="docutils literal notranslate"><span class="pre">bSkipBlankStrings</span></code> and <code class="docutils literal notranslate"><span class="pre">sComment</span></code>;
211
- in case of their criteria are <strong>not</strong> fulfilled, immediately <code class="docutils literal notranslate"><span class="pre">False</span></code> is returned).</p>
212
- <p>Summarized:</p>
213
- <ul class="simple">
214
- <li><p>Filters are used to define <em>criteria</em></p></li>
215
- <li><p>The return value of this method provides the <em>conclusion</em> - indicating if all criteria are fulfilled or not</p></li>
216
- </ul>
217
- <p><em>The following filters are available:</em></p>
218
- <p><strong>bSkipBlankStrings</strong></p>
219
- <blockquote>
220
- <div><ul class="simple">
221
- <li><p>Like already mentioned above leading and trailing spaces are removed from the input string at the beginning</p></li>
222
- <li><p>In case of the result is an empty string and <code class="docutils literal notranslate"><span class="pre">bSkipBlankStrings</span></code> is <code class="docutils literal notranslate"><span class="pre">True</span></code>, the method immediately returns <code class="docutils literal notranslate"><span class="pre">False</span></code>
223
- and all other filters are ignored</p></li>
224
- </ul>
225
- </div></blockquote>
226
- <p><strong>sComment</strong></p>
227
- <blockquote>
228
- <div><ul class="simple">
229
- <li><p>In case of the input string starts with the string <code class="docutils literal notranslate"><span class="pre">sComment</span></code>, the method immediately returns <code class="docutils literal notranslate"><span class="pre">False</span></code>
230
- and all other filters are ignored</p></li>
231
- <li><p>Leading blanks within the input string have no effect</p></li>
232
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
233
- <li><p>The idea behind this decision is: Ignore a string that is commented out</p></li>
234
- </ul>
235
- </div></blockquote>
236
- <p><strong>sStartsWith</strong></p>
237
- <blockquote>
238
- <div><ul class="simple">
239
- <li><p>The criterion of this filter is fulfilled in case of the input string starts with the string <code class="docutils literal notranslate"><span class="pre">sStartsWith</span></code></p></li>
240
- <li><p>Leading blanks within the input string have no effect</p></li>
241
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
242
- <li><p>More than one string can be provided (semicolon separated; logical join: <code class="docutils literal notranslate"><span class="pre">OR</span></code>)</p></li>
243
- </ul>
244
- </div></blockquote>
245
- <p><strong>sEndsWith</strong></p>
246
- <blockquote>
247
- <div><ul class="simple">
248
- <li><p>The criterion of this filter is fulfilled in case of the input string ends with the string <code class="docutils literal notranslate"><span class="pre">sEndsWith</span></code></p></li>
249
- <li><p>Trailing blanks within the input string have no effect</p></li>
250
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
251
- <li><p>More than one string can be provided (semicolon separated; logical join: <code class="docutils literal notranslate"><span class="pre">OR</span></code>)</p></li>
252
- </ul>
253
- </div></blockquote>
254
- <p><strong>sStartsNotWith</strong></p>
255
- <blockquote>
256
- <div><ul class="simple">
257
- <li><p>The criterion of this filter is fulfilled in case of the input string does <strong>not</strong> start with the string <code class="docutils literal notranslate"><span class="pre">sStartsNotWith</span></code></p></li>
258
- <li><p>Leading blanks within the input string have no effect</p></li>
259
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
260
- <li><p>More than one string can be provided (semicolon separated; logical join: <code class="docutils literal notranslate"><span class="pre">AND</span></code>)</p></li>
261
- </ul>
262
- </div></blockquote>
263
- <p><strong>sEndsNotWith</strong></p>
264
- <blockquote>
265
- <div><ul class="simple">
266
- <li><p>The criterion of this filter is fulfilled in case of the input string does <strong>not</strong> end with the string <code class="docutils literal notranslate"><span class="pre">sEndsNotWith</span></code></p></li>
267
- <li><p>Trailing blanks within the input string have no effect</p></li>
268
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
269
- <li><p>More than one string can be provided (semicolon separated; logical join: <code class="docutils literal notranslate"><span class="pre">AND</span></code>)</p></li>
270
- </ul>
271
- </div></blockquote>
272
- <p><strong>sContains</strong></p>
273
- <blockquote>
274
- <div><ul class="simple">
275
- <li><p>The criterion of this filter is fulfilled in case of the input string contains the string <code class="docutils literal notranslate"><span class="pre">sContains</span></code> at any position</p></li>
276
- <li><p>Leading and trailing blanks within the input string have no effect</p></li>
277
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
278
- <li><p>More than one string can be provided (semicolon separated; logical join: <code class="docutils literal notranslate"><span class="pre">OR</span></code>)</p></li>
279
- </ul>
280
- </div></blockquote>
281
- <p><strong>sContainsNot</strong></p>
282
- <blockquote>
283
- <div><ul class="simple">
284
- <li><p>The criterion of this filter is fulfilled in case of the input string does <strong>not</strong> contain the string <code class="docutils literal notranslate"><span class="pre">sContainsNot</span></code> at any position</p></li>
285
- <li><p>Leading and trailing blanks within the input string have no effect</p></li>
286
- <li><p>The decision also depends on <code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code></p></li>
287
- <li><p>More than one string can be provided (semicolon separated; logical join: <code class="docutils literal notranslate"><span class="pre">AND</span></code>)</p></li>
288
- </ul>
289
- </div></blockquote>
290
- <p><strong>sInclRegEx</strong></p>
291
- <blockquote>
292
- <div><ul class="simple">
293
- <li><p><em>Include</em> filter based on regular expressions (consider the syntax of regular expressions!)</p></li>
294
- <li><p>The criterion of this filter is fulfilled in case of the regular expression <code class="docutils literal notranslate"><span class="pre">sInclRegEx</span></code> matches the input string</p></li>
295
- <li><p>Leading and trailing blanks within the input string are considered</p></li>
296
- <li><p><code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code> has no effect</p></li>
297
- <li><p>A semicolon separated list of several regular expressions is <strong>not</strong> supported</p></li>
298
- </ul>
299
- </div></blockquote>
300
- <p><strong>sExclRegEx</strong></p>
301
- <blockquote>
302
- <div><ul class="simple">
303
- <li><p><em>Exclude</em> filter based on regular expressions (consider the syntax of regular expressions!)</p></li>
304
- <li><p>The criterion of this filter is fulfilled in case of the regular expression <code class="docutils literal notranslate"><span class="pre">sExclRegEx</span></code> does <strong>not</strong> match the input string</p></li>
305
- <li><p>Leading and trailing blanks within the input string are considered</p></li>
306
- <li><p><code class="docutils literal notranslate"><span class="pre">bCaseSensitive</span></code> has no effect</p></li>
307
- <li><p>A semicolon separated list of several regular expressions is <strong>not</strong> supported</p></li>
308
- </ul>
309
- </div></blockquote>
310
- <p><em>Further parameter:</em></p>
311
- <p><strong>sString</strong></p>
312
- <blockquote>
313
- <div><p>The input string that has to be investigated.</p>
314
- </div></blockquote>
315
- <p><strong>bCaseSensitive</strong> (<em>boolean, optional, default</em>: <code class="docutils literal notranslate"><span class="pre">True</span></code>)</p>
316
- <blockquote>
317
- <div><p>If <code class="docutils literal notranslate"><span class="pre">True</span></code>, the standard filters work case sensitive, otherwise not.</p>
318
- </div></blockquote>
319
- <p><strong>bDebug</strong> (<em>boolean, optional, default</em>: <code class="docutils literal notranslate"><span class="pre">False</span></code>)</p>
320
- <blockquote>
321
- <div><p>If <code class="docutils literal notranslate"><span class="pre">True</span></code>, additional output is printed to console (e.g. the decision of every single filter), otherwise not.</p>
322
- </div></blockquote>
323
- <p><em>Examples:</em></p>
324
- <p>Returns <code class="docutils literal notranslate"><span class="pre">True</span></code>:</p>
325
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Speed is 25 beats per minute&quot;</span><span class="p">,</span>
326
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
327
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
328
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
329
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="s2">&quot;Sp&quot;</span><span class="p">,</span>
330
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
331
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
332
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
333
- <span class="n">sContains</span> <span class="o">=</span> <span class="s2">&quot;beats&quot;</span><span class="p">,</span>
334
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
335
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
336
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
337
- </pre></div>
338
- </div>
339
- <p>Returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
340
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Speed is 25 beats per minute&quot;</span><span class="p">,</span>
341
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
342
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
343
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
344
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="s2">&quot;Sp&quot;</span><span class="p">,</span>
345
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
346
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
347
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="s2">&quot;minute&quot;</span><span class="p">,</span>
348
- <span class="n">sContains</span> <span class="o">=</span> <span class="s2">&quot;beats&quot;</span><span class="p">,</span>
349
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
350
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
351
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
352
- </pre></div>
353
- </div>
354
- <p>Returns <code class="docutils literal notranslate"><span class="pre">True</span></code>:</p>
355
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Speed is 25 beats per minute&quot;</span><span class="p">,</span>
356
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
357
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
358
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
359
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
360
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
361
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
362
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
363
- <span class="n">sContains</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
364
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="s2">&quot;Beats&quot;</span><span class="p">,</span>
365
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
366
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
367
- </pre></div>
368
- </div>
369
- <p>Returns <code class="docutils literal notranslate"><span class="pre">True</span></code>:</p>
370
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Speed is 25 beats per minute&quot;</span><span class="p">,</span>
371
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
372
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
373
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
374
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
375
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
376
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
377
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
378
- <span class="n">sContains</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
379
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
380
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">&quot;\d</span><span class="si">{2}</span><span class="s2">&quot;</span><span class="p">,</span>
381
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
382
- </pre></div>
383
- </div>
384
- <p>Returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
385
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Speed is 25 beats per minute&quot;</span><span class="p">,</span>
386
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
387
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
388
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
389
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="s2">&quot;Speed&quot;</span><span class="p">,</span>
390
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
391
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
392
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
393
- <span class="n">sContains</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
394
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
395
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">&quot;\d</span><span class="si">{3}</span><span class="s2">&quot;</span><span class="p">,</span>
396
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
397
- </pre></div>
398
- </div>
399
- <p>Returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
400
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Speed is 25 beats per minute&quot;</span><span class="p">,</span>
401
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
402
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
403
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
404
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="s2">&quot;Speed&quot;</span><span class="p">,</span>
405
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="s2">&quot;minute&quot;</span><span class="p">,</span>
406
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="s2">&quot;speed&quot;</span><span class="p">,</span>
407
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
408
- <span class="n">sContains</span> <span class="o">=</span> <span class="s2">&quot;beats&quot;</span><span class="p">,</span>
409
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
410
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">&quot;\d</span><span class="si">{2}</span><span class="s2">&quot;</span><span class="p">,</span>
411
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">&quot;\d</span><span class="si">{2}</span><span class="s2">&quot;</span><span class="p">)</span>
412
- </pre></div>
413
- </div>
414
- <p>Returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
415
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot; &quot;</span><span class="p">,</span>
416
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
417
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
418
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
419
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
420
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
421
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
422
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
423
- <span class="n">sContains</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
424
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
425
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
426
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
427
- </pre></div>
428
- </div>
429
- <p>Returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
430
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;# Speed is 25 beats per minute&quot;</span><span class="p">,</span>
431
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
432
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
433
- <span class="n">sComment</span> <span class="o">=</span> <span class="s2">&quot;#&quot;</span><span class="p">,</span>
434
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
435
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
436
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
437
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
438
- <span class="n">sContains</span> <span class="o">=</span> <span class="s2">&quot;beats&quot;</span><span class="p">,</span>
439
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
440
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
441
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
442
- </pre></div>
443
- </div>
444
- <p>Returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
445
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot; Alpha is not beta; and beta is not gamma &quot;</span><span class="p">,</span>
446
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
447
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
448
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
449
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
450
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
451
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
452
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
453
- <span class="n">sContains</span> <span class="o">=</span> <span class="s2">&quot; Alpha &quot;</span><span class="p">,</span>
454
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
455
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
456
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
457
- </pre></div>
458
- </div>
459
- <p>Because blanks around search strings (here <code class="docutils literal notranslate"><span class="pre">&quot;</span>&#160;&#160; <span class="pre">Alpha</span> <span class="pre">&quot;</span></code>) are considered, whereas the blanks around the input string are removed before computation.
460
- Therefore <code class="docutils literal notranslate"><span class="pre">&quot;</span>&#160;&#160; <span class="pre">Alpha</span> <span class="pre">&quot;</span></code> cannot be found within the (shortened) input string.</p>
461
- <p>This alternative solution returns <code class="docutils literal notranslate"><span class="pre">True</span></code>:</p>
462
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot; Alpha is not beta; and beta is not gamma &quot;</span><span class="p">,</span>
463
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
464
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
465
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
466
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
467
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
468
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
469
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
470
- <span class="n">sContains</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
471
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
472
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">&quot;\s</span><span class="si">{3}</span><span class="s2">Alpha&quot;</span><span class="p">,</span>
473
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
474
- </pre></div>
475
- </div>
476
- <p>Returns <code class="docutils literal notranslate"><span class="pre">True</span></code>:</p>
477
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Alpha is not beta; and beta is not gamma&quot;</span><span class="p">,</span>
478
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
479
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
480
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
481
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
482
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
483
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
484
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
485
- <span class="n">sContains</span> <span class="o">=</span> <span class="s2">&quot;beta; and&quot;</span><span class="p">,</span>
486
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
487
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
488
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
489
- </pre></div>
490
- </div>
491
- <p>The meaning of <code class="docutils literal notranslate"><span class="pre">&quot;beta;</span> <span class="pre">and&quot;</span></code> is: The criterion is fulfilled in case of either <code class="docutils literal notranslate"><span class="pre">&quot;beta&quot;</span></code> or <code class="docutils literal notranslate"><span class="pre">&quot;</span> <span class="pre">and&quot;</span></code> can be found. That’s <code class="docutils literal notranslate"><span class="pre">True</span></code> in this example - but this
492
- has nothing to do with the fact, that also this string <code class="docutils literal notranslate"><span class="pre">&quot;beta;</span> <span class="pre">and&quot;</span></code> can be found. A semicolon that shall be part of the search, has to be masked!</p>
493
- <p>The meaning of <code class="docutils literal notranslate"><span class="pre">&quot;beta\;</span> <span class="pre">not&quot;</span></code> in the following example is: The criterion is fulfilled in case of <code class="docutils literal notranslate"><span class="pre">&quot;beta;</span> <span class="pre">not&quot;</span></code> can be found.</p>
494
- <p>That’s <strong>not</strong> <code class="docutils literal notranslate"><span class="pre">True</span></code>. Therefore the method returns <code class="docutils literal notranslate"><span class="pre">False</span></code>:</p>
495
- <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">bAck</span> <span class="o">=</span> <span class="n">CString</span><span class="o">.</span><span class="n">StringFilter</span><span class="p">(</span><span class="n">sString</span> <span class="o">=</span> <span class="s2">&quot;Alpha is not beta; and beta is not gamma&quot;</span><span class="p">,</span>
496
- <span class="n">bCaseSensitive</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
497
- <span class="n">bSkipBlankStrings</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span>
498
- <span class="n">sComment</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
499
- <span class="n">sStartsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
500
- <span class="n">sEndsWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
501
- <span class="n">sStartsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
502
- <span class="n">sEndsNotWith</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
503
- <span class="n">sContains</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">&quot;beta\; not&quot;</span><span class="p">,</span>
504
- <span class="n">sContainsNot</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
505
- <span class="n">sInclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
506
- <span class="n">sExclRegEx</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span>
507
- </pre></div>
508
- </div>
509
- <div class="line-block">
510
- <div class="line"><br /></div>
511
- </div>
512
- </dd></dl>
513
-
514
- </dd></dl>
515
-
516
- </section>
517
-
518
-
519
- </div>
520
-
521
- </div>
522
- </div>
523
- <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
524
- <div class="sphinxsidebarwrapper">
525
- <h1 class="logo"><a href="index.html">Python Extensions Collection</a></h1>
526
-
527
-
528
-
529
-
530
-
531
-
532
-
533
-
534
- <h3>Navigation</h3>
535
- <ul class="current">
536
- <li class="toctree-l1"><a class="reference internal" href="additional_doc/Introduction.html">1. Introduction</a></li>
537
- <li class="toctree-l1"><a class="reference internal" href="additional_doc/Introduction.html#examples">2. Examples</a></li>
538
- <li class="toctree-l1 current"><a class="current reference internal" href="#">3. CString module</a></li>
539
- <li class="toctree-l1"><a class="reference internal" href="Utils.html">4. CUtils module</a></li>
540
- <li class="toctree-l1"><a class="reference internal" href="File.html">5. CFile module</a></li>
541
- </ul>
542
-
543
- <div class="relations">
544
- <h3>Related Topics</h3>
545
- <ul>
546
- <li><a href="index.html">Documentation overview</a><ul>
547
- <li>Previous: <a href="additional_doc/Introduction.html" title="previous chapter"><span class="section-number">1. </span>Introduction</a></li>
548
- <li>Next: <a href="Utils.html" title="next chapter"><span class="section-number">4. </span>CUtils module</a></li>
549
- </ul></li>
550
- </ul>
551
- </div>
552
- <div id="searchbox" style="display: none" role="search">
553
- <h3 id="searchlabel">Quick search</h3>
554
- <div class="searchformwrapper">
555
- <form class="search" action="search.html" method="get">
556
- <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
557
- <input type="submit" value="Go" />
558
- </form>
559
- </div>
560
- </div>
561
- <script>document.getElementById('searchbox').style.display = "block"</script>
562
-
563
-
564
-
565
-
566
-
567
-
568
-
569
-
570
- </div>
571
- </div>
572
- <div class="clearer"></div>
573
- </div>
574
- <div class="footer">
575
- &copy;2022, Queckenstedt Holger (XC-CT/ECA3).
576
-
577
- |
578
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.0</a>
579
- &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
580
-
581
- |
582
- <a href="_sources/String.rst.txt"
583
- rel="nofollow">Page source</a>
584
- </div>
585
-
586
-
587
-
588
-
589
- </body>
590
- </html>