regexp 2

by juErik

HTML

<p>Welcome to RegExr v2.0 by gskinner.com!<br />
Edit the Expression & Text to see 5 matches. Roll over matches or the expression for details. Undo mistakes with ctrl-z. Save & Share expressions with friends or 22the Community. 1A full Reference & Help is available 3. in the Library, or watch the video Tutorial.</p>
<hr />
<c>Sample text for testing:<br />
    abcdefghijklmn ABCDEFGHIJKLM 0123456789 +-.,!@#$%^&*();\/|<>"'12345 -98.7 3.141 .6180 9,000 +42555.123.4567	+1-(800)-555-2468 [email protected]	[email protected] www.demo.com	http://foo.co.uk/ http://regexr.com/foo.html?q=bar</c>

CSS

.m{background-color: #00FF00;} /* markern */

JavaScript

var str = $('p').text();  // Probiere p oder c
var met = '<span class="m">$&</span>';  // das markern ('$&' = Platzhalter
$('body').html(''); // Body löschen
//$('body').append('<hr />');

// Alle auf einmal wird langsam unübersichtlich, deshalb:
//        $('body').append('<hr />');
var zeig = 1;     var reg; var msg;

switch(zeig){

    case 1 :
        reg = new RegExp( /([A-Z])\w+/g );  // RegExp
        msg = "Findet alle Worte in Grossbuchstaben";
        break;

    case 2 :
        reg = new RegExp( /\d+/g );  // RegExp
        msg ="Findet (reine) Zahlen"
        break;
    case 3 :
        reg = new RegExp( /(?:\d*\.)?\d+/g );  // RegExp
        msg = 'Findet Dezimalzahlen';
        break;
    case 4 :
        reg = new RegExp( /\b\w{4}\b/g );  // RegExp
        msg = 'Findet Worte mit 4 Buchstaben oder 4 Ziffern'
        break;
    case 5 :
        reg = new RegExp( /\w*a\w*/ig );  // RegExp
        msg = 'Findet worte mit einem a';
        break;
    case 6 :
        str = "that tested test is testing the tester's tests";
        reg = new RegExp( /\btest(er|ing|ed|s)?\b/g );  // RegExp
        msg = 'Findet verschiedene Worte mit "test" (eingeschränkt)';
        break;
     case 7 :
        str = "that tested test is testing the tester's tests";
        reg = new RegExp( /\w*test\w*/ig );  // RegExp findet test1
        msg = 'Findet verschiedene Worte mit "test" (alle Variationen)';
        break;
    case 8 :
        str = "444-555-1234 f:246.555.8888 m:1235554567";
        reg = new RegExp( /\b\d{3}[-.]?\d{3}[-.]?\d{4}\b/g );  // RegExp findet Telefonnummern
        msg = 'Findet Telefonnummern (amerikanisch)';
        break;




}  // :switch
    $('body').append(msg);
    $('body').append('<hr />');

        var out = str.replace( reg , met );     // replace
        $('body').append(out);                  // out

    $('body').append('<hr />');