小编und*_*ror的帖子

Javascript正则表达式:匹配任何东西直到某些东西(如果它存在)

嗨,我是正则表达式的新手,这可能是一个非常简单的问题(希望如此).

我试图使用一种解决方案3种字符串

  • "45%",预期结果:"45"
  • "45",预期结果:"45"
  • "", 预期结果: ""

我在尝试什么(让字符串为str):

str.match(/(.*)(?!%*)/i)[1]
Run Code Online (Sandbox Code Playgroud)

在我的脑海中听起来像"匹配任何事物的任何实例,直到'%'如果找到它,或者只是匹配任何东西"

在萤火虫的头脑中,它似乎听起来更像是"只是匹配任何东西而完全无视负面前瞻".也是为了让它变得懒惰 - (.*)?似乎没有帮助.

让我们忘记一下,在这种特殊情况下,我只是匹配数字,所以/\d*/我会这样做.我试图了解一般规则,以便我可以随时应用它.

有人会这么善意帮助我吗?

javascript regex negative-lookahead

17
推荐指数
2
解决办法
3万
查看次数

返回回调的 ReturnType 的打字稿函数

如何注释一个接受回调的函数,并从回调返回类型推断出此类函数的返回类型?

// say that callback takes a number
function takesCallback(cb: (arg:number) => infer T /* error */ ) {
  return cb(42)
}

takesCallback(x => 'foo') // should infer 'string' 
Run Code Online (Sandbox Code Playgroud)

typescript typescript-generics

1
推荐指数
1
解决办法
711
查看次数