Javascript 从一行开始到任何内容,获取除新行以外的所有空格?

Javascript 从一行开始到任何内容,获取除新行以外的所有空格?,javascript,regex,actionscript-3,Javascript,Regex,Actionscript 3,我试图在一行中获取所有指向任何内容的空白。我的RegExp没有得到结果: var oneLineOfText = " Hello World"; var whiteSpace = oneLineOfText.replace(/([\t| ]*).*$/, "$1"); 预期结果(引号内): 注意:在预期的结果中,制表符似乎正在转换为空格字符 注意:我不想匹配新行。我试图从字符串中获取缩进量。如果有一行或者几行,我假设没有缩进 ^[ \t]* ^-从行首开始 [\t]*-

我试图在一行中获取所有指向任何内容的空白。我的RegExp没有得到结果:

var oneLineOfText = "           Hello World";
var whiteSpace = oneLineOfText.replace(/([\t| ]*).*$/, "$1");
预期结果(引号内):

注意:在预期的结果中,制表符似乎正在转换为空格字符

注意:我不想匹配新行。我试图从字符串中获取缩进量。如果有一行或者几行,我假设没有缩进

^[ \t]*
  • ^
    -从行首开始
  • [\t]*
    -尽可能多的空格或制表符


如果要匹配多行字符串,必须添加适当的
gm
修饰符:

var multilineText = "   foo\n     bar";
var whiteSpaces   = multilineText.match(/^[ \t]*/gm);
whiteSpaces[0].length // => 3
whiteSpaces[1].length // => 5
  • ^
    -从行首开始
  • [\t]*
    -尽可能多的空格或制表符


如果要匹配多行字符串,必须添加适当的
gm
修饰符:

var multilineText = "   foo\n     bar";
var whiteSpaces   = multilineText.match(/^[ \t]*/gm);
whiteSpaces[0].length // => 3
whiteSpaces[1].length // => 5

您需要什么确切的输出?显示示例字符串输入和预期输出。尝试
var whiteSpace=oneLineOfText.replace(/^(\s+[\s\s]*$/,“$1”)。为什么要用多种语言标记这个问题?因为JavaScript和ActionScript是兄弟。它们都是ECMAScript。如果正则表达式使用一种语言,那么它将使用另一种语言(在大多数情况下)。因此,如果您是JS或作为开发人员,您可以回答它。AS有一点扩展的正则表达式语法(它支持JS正则表达式引擎不支持的
/s
/x
修饰符)。顺便说一句,那个网站太棒了。我忘了那些额外的标志。你需要什么确切的输出?显示示例字符串输入和预期输出。尝试
var whiteSpace=oneLineOfText.replace(/^(\s+[\s\s]*$/,“$1”)。为什么要用多种语言标记这个问题?因为JavaScript和ActionScript是兄弟。它们都是ECMAScript。如果正则表达式使用一种语言,那么它将使用另一种语言(在大多数情况下)。因此,如果您是JS或作为开发人员,您可以回答它。AS有一点扩展的正则表达式语法(它支持JS正则表达式引擎不支持的
/s
/x
修饰符)。顺便说一句,那个网站太棒了。我忘了那些额外的旗帜了。那是正确的。但我忘了说我不想要新台词。我将更新问题。如果第一个示例中没有匹配项,会发生什么情况
oneLine.match()[0]
将抛出一个错误。@1.21gigawatts,这是表示正则表达式正在工作的代码,而不是您应该使用的代码。显然,你必须用你的逻辑来处理这个问题,这是正确的。但我忘了说我不想要新台词。我将更新问题。如果第一个示例中没有匹配项,会发生什么情况
oneLine.match()[0]
将抛出一个错误。@1.21gigawatts,这是表示正则表达式正在工作的代码,而不是您应该使用的代码。显然,你必须用你的逻辑来处理这个问题。
var multilineText = "   foo\n     bar";
var whiteSpaces   = multilineText.match(/^[ \t]*/gm);
whiteSpaces[0].length // => 3
whiteSpaces[1].length // => 5