Español
Fuente/ Codesnippets

Einige Match Suchmuster

 

Nico
Madysa
Ab XProfan10 hay el Befehl Match$, con el geprüft se, si una Sting una cierto Muster entspricht, also z.B. zuerst una Großbuchstabe kommt, entonces 3 Kleinbuchstaben, una Leerzeichen y danach 3 Ziffern. Yo habe hier einiges gesammelt con un pequeño Beispielprogramm:
KompilierenMarcaSeparación
Def $Name   "[A-ZÄÖÜ]([a-zäöü]+|~.)(~-[A-ZÄÖÜ]([a-zäöü]{2,}|~.))* [A-ZÄÖÜ]([a-zäöü]+|~.)(~-[A-ZÄÖÜ]([a-zäöü]{2,}|~.))*"
Def $Time   "((0|1|)[0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9])?"
Def $Vorw   "[1-9][0-9]{1,4}"
Def $Telnum "[1-9][0-9]{4,7}"
Def $Url    "(https://)?(www~.)?[^@|²³.]{1,}(~.[^@|²³  .]{2,3}){1,3}"
Def $Street "([A-Z][a-z]{2,}~.? )+(0[1-9][0-9]*|[1-9][0-9]*)"
Def $Plz    "[0-9]{5} [A-Z][a-z]{2,}"
Def $RoemM  "M*"
Def $RoemC  "(C[DM]|C[DM]|D?C{0,3})?"
Def $RoemX  "(X[LC]|X[LC]|L?X{0,3})?"
Def $RoemI  "(I[VX]|I[VX]|V?I{0,3})?"
Declare E& , T& , Roem$ , Addr$ , Tel$ , XTel$
Roem$ = "^" + $Roemm + $Roemc + $Roemx + $Roemi + "$"
Addr$ = "^" + $Name + "(
|[,;] )" + $Street + "(
|[,;] )" + $Plz + "$"
Tel$  = "^(0"+$Vorw+"/)?"+$Telnum+"$"
XTel$ = "^((~+49 ("+$Vorw+"|~(0"+$Vorw+"~))|0049 "+$Vorw+"|~(0049 "+$Vorw+"~)|0"+$Vorw+"|~(0"+$Vorw+"~)) )?"+$Telnum+"$"
+49 30 12345678
+49 (030) 12345678
0049 30 12345678
(0049 30) 12345678
030 12345678
(030) 12345678
12345678
Window 300 , 200 - 200 , 200
Cls External("User32","GetSysColor",15)
E& = Create("MultiEdit",%Hwnd,"",5,05,180,(-20))
T& = Create("Text",%Hwnd,"",5,30,180,160)

Whilenot IsKey(27)

    Waitinput
    Match$(XTel$,Gettext$(E&))<- Addr$ durch zu testende Konstante/Variable ersetzen

    If %Matchpos >= 0

        Settext T& , $Match

    Else

        Settext T& , "ungültig"

    Endif

Wend


$Name = Vorname + Nachname Doppelnamen son mittels Bindestrich posible
$Time = hh:mm oder hh:mm:ss
$URL = Internetadresse, z.B. [...]  desafortunadamente auch www.de
$Street = Straßenname + Hausnummer, z.B. Str. des Friedens 1
$PLZ = Postleitzahl + Ort, z.B. 02979 Burghammer
Roem$ = Römischess Zahlzeichen, z.B. CXVII
Addr$ = komplette Adresse, por Chr$(13), Komma oder Semikolon getrennt.
Tel$ = Festnetznummer, auch con Vorwahl posible, z.B. 011111/99999
XTel$ = erweiterte Festnetznummer, folgende Formate son posible:
+49 30 12345678
+49 (030) 12345678
0049 30 12345678
(0049 30) 12345678
030 12345678
(030) 12345678
12345678
Kritik y Meinung son ausdrücklich erwünscht.
 
Nico Madysa
09.06.2006  
 




Clemens
Meier
PLZ siempre con uno 0 beginnend? Schade, mi Stadt se ausgeschlossen
 
XProfan 9.1; XP SP2; FF; Editpad
10.06.2006  
 




Michael
Wodrich
TelefonNr va no:
0451/...

porque[quote:fa121d580d]
Capture
0
Any character en 1-9
Exactly 5 times
/
End Capture
? (zero or one time)
Any character en 1-9
Exactly 5 times
[/quote:fa121d580d]
url va auch no

[quote:fa121d580d]Capture [...] 
End Capture
? (zero or one time)
Capture
www~
. (any character)
End Capture
? (zero or one time)
Any character not en @|²³~ ~ ~.
+ (one or more times)
~
. (any character)
Any character not en @|²³~ ~
At least 2, but not more than 3 times
Capture
~
. (any character)
Any character not en @|²³~ ~
At least 2, but not more than 3 times
End Capture
? (zero or one time)
[/quote:fa121d580d]
y así más

PLZ

[quote:fa121d580d]0
Any character en 1-9
Exactly 4 times
(space)
Any character en A-Z
Any character en a-z
At least 2 times
[/quote:fa121d580d]
Kontrolliert con The Regulator - freie Versión

[...] 
[...] 
 
Programmieren, das spannendste Detektivspiel der Welt.
10.06.2006  
 




Nico
Madysa
Also Yo bin sí ya veces glücklich, dass en el römischen Pagar no Fehler aufgetaucht son.(El haben mich fast en el WAHNSINN getrieben!).
[quote:9180e9b2ca]
PLZ siempre con uno 0 beginnend? Schade, mi Stadt se ausgeschlossen
[/quote:9180e9b2ca]
Sorry, Yo bin su ausgegangen, PLZs begännen grundsätzlich con uno 0.

[quote:9180e9b2ca]
TelefonNr va no: 0451/...
[/quote:9180e9b2ca]
Das selbe en Grün. In el Minuten des Zusammenschreibens ging Yo su de,
Vorwahlen hätten grundsätzlich 5 Ziffern.(Tuve simplemente una Brett vorm Kopf.)

@ Michael: Su Regulator berücksichtigt no, dass en el regülären Ausdrücken de XProfan el Tilde(~) el Escape-Signo es y no Backslash().
En me ha url funktioniert, abgesehen de el Macke, dass auch w w w . d e como URL durchgeht. (Yo habe w w w . d e gesperrt, así no stattdessen dieses [...] adecuado se.)

Hier es ahora una überarbeitete Versión:
KompilierenMarcaSeparación
Def $Name "[A-ZÄÖÜ]([a-zäöü]+|~.)(~-[A-ZÄÖÜ]([a-zäöü]{2,}|~.))* [A-ZÄÖÜ]([a-zäöü]+|~.)(~-[A-ZÄÖÜ]([a-zäöü]{2,}|~.))*"
Def $Time "((0|1|)[0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9])?"
Def $Tel "(0[1-9][0-9]{2,3}/)?[1-9][0-9]{6}"
Def $Url  "(https://)?(www~.)?[^@|²³~~~.]{1,}(~.[^@|²³~~~.]{2,3}){1,3}"
Def $Street "([A-Z][a-z]{2,}~.? )+(0[1-9][0-9]*|[1-9][0-9]*)"
Def $Plz  "[0-9]{5} [A-Z][a-z]{2,}"
Def $Roemm "M*"
Def $Roemc "(C[DM]|C[DM]|D?C{0,3})?"
Def $Roemx "(X[LC]|X[LC]|L?X{0,3})?"
Def $Roemi "(I[VX]|I[VX]|V?I{0,3})?"
Declare E& , T& , Roem$ , Addr$
Roem$ = "^" + $Roemm + $Roemc + $Roemx + $Roemi + "$"
Addr$ = "^" + $Name + "(
|[,;] )" + $Street + "(
|[,;] )" + $Plz + "$"
Window 300 , 200 - 200 , 200
Cls External("User32","GetSysColor",15)
E& = Create("MultiEdit",%Hwnd,"",5,05,180,(-20))
T& = Create("Text",%Hwnd,"",5,30,180,160)

Whilenot Iskey(27)

    Waitinput
    Match$(Addr$,Gettext$(E&))<- Addr$ durch zu testende Konstante/Variable ersetzen

    If %Matchpos >= 0

        Settext T& , $Match

    Else

        Settext T& , "ungültig"

    Endif

Wend


EDIT: Posesiones ahora esta Contribución editiert, como Yo wegen una Fehler no todavía alles otra vez reinstellen quería. Gracias a Clemens para el Richtigstellung meiner Vorstellung de Telefonnummern. ;D
 
Nico Madysa
12.06.2006  
 




Clemens
Meier
Schon beim Überfliegen erneut una Fehler gesehen en Telefonnummer. El Vorwahl 07402 wäre después de deinem Ausdruck no posible.

Richtig, el 0 es a erster Punto. a 2. Punto 1-9, danach Pagar de 0-9

Musst also el Ausdruck todavía algo erweitern.

En el Hauptanschluß analog, a erster Punto 1-9, danach Pagar de 0-9:

Def $Tel (0[1-9]{3,4}/)?[1-9]{5} es also falso (y a kurz hinten, mi passt como ya no rein)
Richtig oder para mindest mejor:
Def $Tel (0[1-9][0-9]{2,3}/)?[1-9][0-9]{6}

Weitere mögliche Fehler dürfen nun auch otro suchen
 
XProfan 9.1; XP SP2; FF; Editpad
12.06.2006  
 



Folgende Angabemöglichkeiten para Telefonnummern son typisch:

Yo nehme ahora veces el Berliner Vorwahl 030
+49 30 12345678
+49 (030) 12345678
0049 30 12345678
(0049 30) 12345678
030 12345678
(030) 12345678
12345678

Oft genutzte Sonderzeichen in Teleangaben sind +-()[] /.
 
12.06.2006  
 




Clemens
Meier
El 4. Variante kannte Yo no. Aber total una guter Ansatz en una kompletten Ausdruck a formulieren.
 
XProfan 9.1; XP SP2; FF; Editpad
12.06.2006  
 



[quote:926ddf29a9=Clemens Meier]El 4. Variante kannte Yo no. Aber total una guter Ansatz en una kompletten Ausdruck a formulieren.[/quote:926ddf29a9]
Usted hast ya bastante - el 4. Variante es más selten, aber disponible:  [...] 
 
12.06.2006  
 




RGH
Außerdem setzt se siempre mehr el internationale Schreibweise con Bindestrich por:

+49-30-1234567
+4930-1234567

oder gar sin todos Trennzeichen (se gerne auch en Handynummern verwandt):

+49301234567

No a vergessen el Versionen con 00 en lugar de +.

Am besten debería uno Leerzeichen, Bindestriche y Klammern simplemente ausfiltern. Lo könnten sí en Nenenstellenanlagen todavía weitere Bestandteile folgen:

+49-30-123456-78

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
12.06.2006  
 




Michael
Wodrich
Posesiones beim Regulator probablemente no konvertiert??!?

Aber el puede ser sí a mano nachholen. En Prüfung fällt de paso en, el uno no con el runden Klammern así herumwerfen debería. El haben nämlich una bastante klare propio Función.

El regulären Ausdrücke also Por favor, sin la runden Klammern.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
13.06.2006  
 




Clemens
Meier
[quote:3a4ca13962=Michael Wodrich]
El regulären Ausdrücke also Por favor, sin la runden Klammern.
[/quote:3a4ca13962]
Verstehe Yo no, como puede ser reguläre Ausdrücke sin runde Klammern redactar. El son una absolutes Muss en sogenannte Subpattern a forma.
 
XProfan 9.1; XP SP2; FF; Editpad
13.06.2006  
 




Michael
Wodrich
Richtig, el Name fiel No así rápidamente una...
 
Programmieren, das spannendste Detektivspiel der Welt.
13.06.2006  
 




Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

11.447 Views

Untitledvor 0 min.
RudiB.28.08.2022
Walter03.12.2020
Andre Rohland08.09.2018
Peter Max Müller23.11.2017
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie