2016-05-06 12 views
0

In meiner regex Funktionwie Text aus angewendet für Loop-out-Wert

$(document).ready(function(){ 
    $('button').click(function(){ 
    str1 = $('#text').val(); 
var matched = str1.match(/[a-zA-Z]+/g); 
      var addy=""; 
    for(i=0; i<matched.length; i++) 
    { 
     addy +='/'+matched[i]+'/g<br>';   
    } 
    var ex = str1.match(new RegExp(addy)); 
    $('#demo').html('matched value:'+addy);//regexp terms are correctly outed. 
    $('#demo1').html('for loop out to reg:'+ex);//null value are present 
    }); 
    }); 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
<input type="text" id="text" value="-5x-7y+2y-7h-9t"> 
<button>go</button> 
<p id="demo"></p> 
<p id="demo1"></p> 

den Wert auf regex angelegt von für Schleife text.regex Funktion richtig aus mit für loop.but angewendet geoutet regex dieses Ergebnis einer anderen Regex-Funktion Nullwert present.i muss genau wie Funktion anhängen, wenn alle für die Schleife fnction appiled .Bitte zu sagen, was der Grund dafür ist, & wie mein problem.thnks lösen

+1

Es sieht aus wie Ihr wie eine Regex Zeichenfolge Aufbau '/ etwas/g
/somethingelse/g
'. Ich glaube nicht, dass das gültig ist. Was versuchst du zu machen? – Taplar

+0

Ich versuche, den Wert aus dem Eingabetext automatisch zu erkennen und die Variablen A-Z voneinander zu trennen. Fügen Sie getrennt den gleichen Variablenwert hinzu. – prasanth

Antwort

1

jQuery(function($){ 
 
    var $text = $('#text'); 
 
    var regex = /[+-/*][a-zA-Z0-9]+/g 
 
    
 
    $('button').on('click', function(){ 
 
    console.log($text.val().match(regex)); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input type="text" id="text" value="-5x-7y+2y-7h-9t"> 
 
<button>go</button>

Versuchen Sie, die Ausdrucksteile auseinander zu brechen? Wenn ja, könnten Sie etwas wie das Folgende tun.

+0

wo ist der Ausgang? – prasanth

+0

Es ist in der Konsole. Kennen Sie die Konsole nicht? Klicken Sie mit der rechten Maustaste auf die Seite und wählen Sie, um das Element zu prüfen. Dadurch werden Ihre Browser-Tools aufgerufen, wobei eine der Registerkarten die Konsole ist. Nur für den Fall, dass Sie mit einigen der Grundlagen nicht vertraut sind: http://fixingthesejquery.com/#slide1 – Taplar

0

Wollen Sie das?

https://jsfiddle.net/bv4w5eoe/

$(document).ready(function(){ 
    $('button').click(function(){ 
    str1 = $('#text').val(); 
var matched = str1.match(/[a-zA-Z]+/g); 
      var addy="/"; 
    for(i=0; i<matched.length; i++) 
    { 
     addy += matched[i]+'|';   
    } 
    addy = addy.slice(0, -1); 
    addy += '/g' 
    debugger; 
    var ex = str1.match(new RegExp(addy)); 
    $('#demo').html('matched value:'+addy);//regexp terms are correctly outed. 
    $('#demo1').html('for loop out to reg:'+ex);//null value are present 
    }); 
    });