Regex从每一行开始删除空格



我使用Highlight js插件,它可以自动缩进我的代码。我的IDE还自动缩进我的代码。

<div>
     <div>
         <pre>
              <code>
                   <h1>Hello world</h1>
              </code>
         </pre>
      </div>
 </div>

我想要这个:

<h1>Hello word</h1>

但因为Highlight js不做相对独立,我最终得到了这个:

                   <h1>Hello world</h1>

所以我尝试了类似的东西

$('pre code').html($('pre code').html().replace(/^s{24,}/g,''));

它对字符串的第一行很好,但我想对每一行都这样做-->从每行开始每隔24个第一个空格删除一次。

两件事:

  • s也匹配换行符,因此需要[^Srn]来匹配任何水平空间
  • /m修饰符是使^匹配一行的开头而不是整个字符串的开头所必需的

由于我在上面的示例中只计算了19个空格,这里有一个有效的正则表达式:

/^[^Srn]{19,}/gm

请参阅regex演示

相关内容

  • 没有找到相关文章

最新更新