LitDev 1.2.24.0 DE
http://litdev.uk/LitDev.De.html Extension API
LDRegex
RegEx (Regular expression, reguläre Ausdrücke) zur Textmanipulation.
example http://msdn.microsoft.com/library/hs600312.aspx (Regular expressions quick reference.pdf)
http://www.regular-expressions.info/refquick.html (/quickstart.html, /tutorial.html)
http://regexlib.com/CheatSheet.aspx
Match | Replace |
Match(input,pattern,caseSensitive)
Durchführen einer Regex Suche.
http://msdn.microsoft.com/library/system.text.regularexpressions.regex.aspx
http://msdn.microsoft.com/library/vstudio/b49yw9s8.aspx
input Der Eingabestring der nach Übereinstimmungen durchsucht wird (bleibt unverändert).
pattern Das Regex Suchmuster als String:
^ Beginn, $ Ende, . jedes, ? 0-1, * 0+, + 1+, \ Escape, [a-f] a bis f, [^0-9] nicht Ziffer, \d Ziffer, \w Buchst, \s Whitespace, \t Tab, (Gruppe), {Quant}
caseSensitive Bei Regex Übereinstimmung GROß-/kleinschr. unterscheiden? "True" oder "False" (Standard).
returns Die Suchtreffer als Array, indexiert durch deren Anfangsposition (ab 1) im String ("startPos1=fund1;..;") oder "".
example A. Zeilenanzahl im String:
lf = Text.GetCharacter(10) ' "\n"
arr = LDRegex.Match(str, lf,"")
nLine = Array.GetItemCount(arr)
B. arr = Match(str, "^[^\.]*$","")
'arr = "" (str mit ".")
'arr[1] = str (ohne ".")
C. isMatch?:
If LDRegex.Match(str, muster,"") <> "" Then
isMatch = "True"
EndIf
D. isHex?:
LDLogic.NE(Match(hex, "^#[0-9a-f]+$",""),"")
E. isColor?:
LDLogic.NE(Match(col, "^#(?:[0-9a-f]{3}){1,2}$",""),"")
Replace(input,pattern,replacement,caseSensitive)
Durchführen einer Regex Suche mit Ersetzen.
http://docs.microsoft.com/dotnet/standard/base-types/regular-expression-language-quick-reference
http://docs.microsoft.com/dotnet/standard/base-types/substitutions-in-regular-expressions
input Der Eingabestring in dem Suchtreffer ersetzt werden (bleibt unverändert).
pattern Das Regex Suchmuster als String:
^ Beginn, $ Ende, . jedes, ? 0-1, * 0+, + 1+, \ Escape, [a-f] a bis f, [^0-9] nicht Ziffer, \d Ziffer, \w Buchst, \s Whitespace, \t Tab, (Gruppe), {Quant}
replacement Der Ersatzstring für Suchtreffer, zB. für (Treffergruppe):
$& voller Trefferstring
$1 Trefferindex 1
$2 Trefferindex 2 usw.
caseSensitive Bei Regex Ersatz GROß-/kleinschr. unterscheiden? "True" oder "False" (Standard).
returns Die geänderte Version des Eingabestrings nach Regex Ersatz.
example A. " aus String entfernen:
qu = Text.GetCharacter(34)
ohneQu = LDRegex.Replace(str, qu,"","")
B. Doppelleerzeilen entfernen:
LDRegex.Replace(str, doCrLf,crlf,"")
C. Strip html/xml Tags:
LDRegex.Replace(html,"?.+?>","","") 'od.
LDRegex.Replace(html,"<.*?>"," ","") 'und
LDRegex.Replace(html," ","","")
D. Nur num. Arraywerte:
LDRegex.Replace(arr,"(;|)\d\=|;"," ","")
E. Mehrere Leerzeilen durch einzelne ersetzen:
str = File.ReadContents(fIn)
out = LDRegex.Replace(str, "(\r\n){2,}",doCrLf,"")
File.WriteContents(fNeu ,out)
F. Endende spc/tab entfernen:
LDRegex.Replace(line,"[ \t]+$","","")
G. Nicht-Ascii Zeichen (<32, >126) entfernen:
LDRegex.Replace(str,"[^ -~]*","","")
H. chr am Ende anfügen:
LDRegex.Replace(str, "(.)$","\1"+chr,"")