【问题标题】:Regex counting number of space and tab in text indent正则表达式计算文本缩进中空格和制表符的数量
【发布时间】:2020-02-24 05:53:29
【问题描述】:

我正在尝试找到一个 RegEx 解决方案,让我可以针对文本缩进计算 tab-press 和 space-key-press 的数量。它应该支持计数以下场景:

\t\t欢迎来到 Hello World (2 tab press)

\s\s\s\s\t欢迎来到Hello World(4 space and one tab)

\s\s\t\s\s\t欢迎来到Hello World(combinations of repeated space and tabs)

\t\s\s欢迎来到 Hello World (one tab 2 spaces)

【问题讨论】:

  • 你在这里使用什么语言/工具?
  • JavaScipt 正则表达式解决方案可以。谢谢!
  • 使用regex101.com 并在那里测试你的东西......你通常可以在那个网站上找到它。

标签: javascript regex string


【解决方案1】:

如果您想为此使用 JavaScript 正则表达式,计算出现次数的一种方法是比较替换各种空白字符之前和之后的字符串长度,例如

var input = "    \tWelcome to Hello World";
input = input.replace(/^(\s+).*$/, "$1");
var num_spaces = input.length - input.replace(/[ ]/g, "").length;
var num_tabs = input.length - input.replace(/\t/g, "").length;
console.log("There are " + num_spaces + " spaces.");
console.log("There are " + num_tabs + " tabs.");

上述代码中的第二行 sn -p 去除出现在初始空白字符簇之后的所有文本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多