[GastForen Programmierung/Entwicklung JavaScript Reguläre Ausdrücke

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Reguläre Ausdrücke

Molle
Beiträge gesamt: 2

6. Nov 2004, 20:21
Beitrag # 1 von 5
Bewertung:
(1095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

habe folgende Aufgabe zu lösen. Ich bräuchte da etwas Hilfe, wie kann man das lösen?
Erstellen Sie eine Webseite, die das Anlegen einer kleinen Linksammlung ermöglicht. Gestalten Sie dazu ein Formular, in dem ein Benutzer den URL und den Titel einer seiner Meinung nach nützlichen Website eintragen kann. Klickt der Benutzer auf den Submit-Button, soll überprüft werden, ob es sich bei der Eingabe um einen korrekten URL handelt und ob ein Titel eingetragen wurde.
Zur Vereinfachung sollen hier nur eingeschränkte URLs zugelassen werden. Der URL muss mit http:// beginnen und soll dahinter nur den Namen des Webservers enthalten. Bei dem Servernamen muss es sich um einen vollständig qualifizierten Domainnamen handeln, dessen letzte Komponente eine Toplevel-Domain (zwei oder mehr Buchstaben) ist. Davor kommen eine oder mehrere Namenskomponenten, die jeweils Buchstaben, Ziffern und Bindestriche enthalten dürfen und durch Punkte voneinander getrennt werden. Weitere Angaben im URL sollen hier nicht zugelassen werden, d.h. insbesondere URLs mit Pfadangaben auf dem Server sollen nicht eingetragen werden können.
Auf eine unzulässige oder unvollständige Eingabe soll der Benutzer beim Versuch, das Formular abzusenden, in einer Dialogbox hingewiesen werden. Hat er jedoch einen zulässigen URL und einen Titel eingegeben, sollen diese in einem Cookie gespeichert werden. Lassen Sie dabei zu, dass ein Benutzer bis zu zehn verschiedene Links speichert, die in getrennten Cookies abgelegt werden. Überschreiben Sie also erst dann einen der alten Cookies, wenn der Benutzer einen elften Eintrag eingibt.
Ruft der Benutzer die Linksammlung erneut auf, sollen die in den Cookies gespeicherten Links in der Seite erscheinen, wobei jeweils der eingegebene Titel als Linktext verwendet werden soll. Die Daten sollen ein Jahr lang gespeichert bleiben.
X

Reguläre Ausdrücke

Markus Walker
Beiträge gesamt: 494

7. Nov 2004, 12:46
Beitrag # 2 von 5
Beitrag ID: #122046
Bewertung:
(1095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Molle

>Ich bräuchte da etwas Hilfe, wie kann man das lösen?
Indem Du einen guten JavaScript-Kurs besuchts (tust Du dies gerede?) ;-)
oder lese Dich mal hier durch:
http://de.selfhtml.org/...t/objekte/regexp.htm
http://de.selfhtml.org/.../document.htm#cookie

Dann gibts noch eine ganze Anzahl Bücher. Ich selbst bevorzuge die Bücher von O'Reilly.


Komm danach mit konkreten Fragen zurück. Wir helfen gerne, aber übernehmen nicht die Hausaufgaben.

HTH


als Antwort auf: [#121961]

Reguläre Ausdrücke

Molle
Beiträge gesamt: 2

8. Nov 2004, 20:44
Beitrag # 3 von 5
Beitrag ID: #122456
Bewertung:
(1095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

das ist schon in Ordnung, erst mal Danke für den Tip.
Hier die ersten Schnipsel. Ich bau erstmal lauter Einzelteile und dann sehen wir weiter. Was haltet ihr davon?
<html>
<head>
<title>regulärer Ausdruck</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" language="JavaScript">

//prüfen der eingabe
function pruefen(){
var eingabe = document.form_send.eingabe.value;
var url = /^[_http:\/\/]+[_http://www.](\.[_a-zA-Z0-9-]+)*([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}$/;
var passt = eingabe.match(url);
if (passt == null) {
alert("Falsche Eingabe");
document.form_send.eingabe.focus();
}
}
//schreiben Cookie um User identifizieren zu können
//lesen Cookie
//ausgabe Cookie
//ab 11 Cookie überschreiben aber wie?
</script>
</head>

<body>
<div align="center">
<p><font size="+3">Bitte geben Sie hier blablabla </font></p>
<form name="form_send">
Bitte hier URL eingeben:
<input name="eingabe" type="text" size="50" maxlength="50">
</form>
<p><font size="+3">
<input name="send" type="button" id="send" value="Abschicken" onClick="pruefen();">
</font></p>
</div>
</body>
</html>


als Antwort auf: [#121961]

Reguläre Ausdrücke

ganesh
Beiträge gesamt: 1981

8. Nov 2004, 21:09
Beitrag # 4 von 5
Beitrag ID: #122459
Bewertung:
(1095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
nun ja, http://google.com wird als ungültig bezeichnet, was ja nicht stimmt. Nimm 'www' raus bzw. mache es optional.


als Antwort auf: [#121961]

Reguläre Ausdrücke

Anonym
Beiträge gesamt: 22827

9. Nov 2004, 11:50
Beitrag # 5 von 5
Beitrag ID: #122587
Bewertung:
(1095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,
hier die nächsten Brocken. Wie ich das alles zusammen baue weis ich auch noch nicht. Bin wohl ein hoffnungsloser Fall. wie kann ich dann die Cookies im Document ausgeben und erreichen das ab 11 überschrieben wird?

//prüfen der eingabe
function pruefen(){
var eingabe = document.form_send.eingabe.value;
var url = /^[_http:\/\/]+(\.[_a-zA-Z0-9-]+)*([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}$/;
var passt = eingabe.match(url);
if (passt == null) {
alert("Falsche Eingabe");
document.form_send.eingabe.focus();
}
}

// Schreibt einen Cookie

function writeCookie(name, wert) {
var arg_wert = writeCookie.arguments;
var arg_laenge = writeCookie.arguments.length;
var expires = null;
if (arg_laenge > 2) {
expires = arg_wert[2];
}

if (expires != null) {
document.cookie = name + "=" + escape(wert)
+ "; expires=" + expires.toUTCString();
} else {
document.cookie = name + "=" + escape(wert);
}
}
//Haltbarkeit des cookies
function actTime(t) {
var jetzt = new Date();
var Auszeit = new Date(jetzt.getTime() + t);
return Auszeit;
}

var cookie_name = "mein_cookie";
var sp = ",";
var expTime = 1000 * 60 * 60
* 24 * 30 * 12;

//Liest einen Cookie
function getCookie(name) {
if (document.cookie) {
var cookies = document.cookie.split("; ");
for (i = 0; i < cookies.length; i++) {
var nv = cookies.split("=");
if (nv[0] == name) {
return unescape(nv[1]);
}
}
}
return null;
}

function ausgabe() {
//??????


</script>


als Antwort auf: [#121961]
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
17.04.2024

Online
Mittwoch, 17. Apr. 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!