Axel Richter: multi line...?

Beitrag lesen

Hallo,

/.../g /aus/g findet "aus" so oft wie es in dem gesamten zu durchsuchenden Bereich vorkommt. Die Fundstellen werden intern in einem Array gespeichert

Wie war das eigentlich mit Multiline Mode? Ist dieses Suchmuster auch in der Lage Zeilenumbrüche zu ignorieren? Meiner Meinung nach sollte da nicht nur "g", sondern sogar "mg" stehen.

Nein. Das Suchmuster /%E4/ muss keine Zeilenumbrüche ignorieren. Es beinhaltet ja keine, sondern sucht nur nach der Zeichenfolge %E4.

Ich hab's jedenfalls nicht getan - und wäre wie Du froh, Genaueres über die  Auswirkung des Modifiers m zu wissen.

Er tut das, was s.oliver scheibt. Er sorgt dafür, dass man in Strings, die Zeilenumbrüche enthalten, mit ^(Zeilenanfang) und $(Zeilenende) nach einzelnen Zeilen suchen kann.

Beispiel:

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"  
        "http://www.w3.org/TR/html4/strict.dtd">  
<html>  
<head>  
<title>Titel</title>  
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">  
<script type="text/javascript">  
<!--  
window.onload = function() {  
  
 var myMonitor = document.getElementById("monitor");  
  
 var findw = "Das \nist \nein\n Test. So \nein\n Quatsch!"  
 //var findw = document.getElementsByTagName("P")[0].innerHTML;  
 //var findw = document.getElementsByTagName("P")[0].firstChild.nodeValue;  
 myMonitor.value = findw;  
  
 //Wir suchen ein allein in der Zeile stehendes "ein"  
 alert(findw.match(/^ein$/mg));  
};  
//-->  
</script>  
</head>  
<body>  
<textarea rows="10" cols="50" id="monitor"></textarea>  
<p>Das  
ist  
ein  
 Test. So  
ein  
 Quatsch!</p>  
</body>  
</html>  

Das Problem ist, dass im IE weder in [ElementNode].innerHTML noch in [TextNode].nodeValue zeilenumbrüche enthalten sind.

viele Grüße

Axel