2017-05-10 2 views
0

Ich habe den folgenden HTML-Code:Wie ändere man die Groß-/Kleinschreibung des übereinstimmenden Gruppentextes mit Regex in Aptana Studio 3?

<input type="radio" name="appearance" /> 
 
<label>Appropriate</label>

Ich verwende den folgenden regulären Ausdruck den Text innerhalb der Label-Tags (kein regex Experte zu extrahieren, so dass dies funktioniert für mich, bitte Rat besseren Weg):

(<input \btype="radio"\s\b\bname\b="[\w://.]*") \/>(\s+)(<label>(.*?)<\/label>) 

ich verwende die folgenden, den Code zu ersetzen:

$1 value=\"$4\"\>$2$3 

Dadurch ändert sich die ursprünglichen HTML:

<input type="radio" name="appearance" value="Appropriate"> 
 
<label>Appropriate</label>

Ich möchte jedoch der Wert, "angemessen" in diesem Fall Klein sein. Ich habe versucht, \ L ohne Glück hinzuzufügen.

Jede Hilfe wird geschätzt.

Danke.

+0

Sie erhalten eine Programmiersprache dafür brauchen. Sie können den Inhalt einer Erfassungsgruppe nicht mit nur einer Regex ändern. – chris85

+0

Hallo chris85. Ich denke daran, den Code zu einem leistungsfähigeren Editor wie Geany zu kopieren und es dort zu machen. Dann kopiere es zurück. Vielen Dank. – vasc0x

Antwort

0

Wenn Sie dies in JavaScript tun, können Sie einfach tolowerCase() in
die Callback-Funktion verwenden.

var input = '\ 
 
<input type="radio" name="appearance" />\n\ 
 
<label>Appropriate</label>'; 
 
     
 
var output = input.replace(/(<input[ ]\btype="radio"\s\b\bname\b="[\w:\/\/.]*")[ ]\/>(\s+)<label>(.*?)<\/label>/, 
 
    function(m,p1,p2,p3, p4) 
 
    { 
 
     return p1 + " value=\"" + p4 + "\"\>" + p2+ "<label>" + p3.toLowerCase() + "</label>"; 
 
    } 
 
); 
 
     
 
console.log(output);

+0

Hallo SLN. Ich sollte meine Frage wahrscheinlich klarer stellen. Was ich erreichen möchte, ist, den Code, den ich in Aptana Studio habe, tatsächlich zu ändern. Dies ist zur Codierungszeit, nicht zur Laufzeit. Ich möchte den Editor von Aptana dazu benutzen. Danke für deine Idee. Könnte später nützlich sein. – vasc0x

+0

@ vasc0x - Der obige Code wird zur Laufzeit ausgeführt. In Ihrer Frage geben Sie an, $ 1 value = \ "$ 4 \" \> $ 2 $ 3' zu ersetzen. Wann erwarten Sie, dass das zur Codezeit ersetzt wird? – sln

+0

Zur Codezeit. Vielen Dank. – vasc0x

Verwandte Themen