如何在Javascript中删除前面的空行或空格?

时间:2017-11-10 14:19:29

标签: javascript jquery css

代码的输出有太多空格或空行。如何删除那些。我希望行高相等。

为了解释更多细节,我附上了以下整个代码。



function clicked() {
  document.getElementById("data").innerHTML =
    "Fethching Score and Ranking <br>loading...";

  var xhr = new XMLHttpRequest();
  var url = document.getElementById("url").value;
  if (url == "") {
    alert("Please enter URL");
    return;
  }
  var xhr = new XMLHttpRequest();
  xhr.open(
    "GET",
    "https://www.googleapis.com/pagespeedonline/v1/runPagespeed?screenshot=false&strategy=mobile&url=" +
      encodeURIComponent(url)
  );
  
  xhr.onload = function() {
    document.getElementById("data").innerHTML = xhr.responseText.replace(/[!@#$^&%*"()+=[\]\{}|<>?,\\-]/g,'');;
 };
  xhr.send();
}
&#13;
#data{white-space: pre-line;}
&#13;
<input type="text" placeholder="Enter URL with http:// or https://" id="url" class="form-control"/>
<p class="help-block">with <code>http</code> or <code>https</code></p>
<input type="button" value=" ENTER" onclick="clicked();" class="btn btn-success"/>

<pre id="data"></pre>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

只需删除空白行(假设“空白”也表示仅包含空格/制表符的行)。您可以链接多个.replace s:

document.getElementById("data").innerHTML = xhr.responseText
                                               .replace(/[!@#$^&%*"()+=[\]\{}|<>?,\\-]/g,'')
      /* this is the added part: */            .replace(/^\s*[\r\n]/gm, '');

^\s*[\r\n]正则表达式基本上是指“任何数字(包括0)的空白字符和行尾”。标志用于global and mmultiline