首页 > 解决方案 > 前导零后匹配所有内容的正则表达式是什么

问题描述

我想知道如何在字符串开头的零之后匹配字符串。

所以字符串应该匹配的例子是

ABC0123 -> ABC0123
0ABC0123 -> ABC0123
000ABC0123 -> ABC0123

我已经尝试过[^0]+$,但这会返回以下错误

   ABC0123 -> 123
    0ABC0123 -> 123
    000ABC0123 -> 123

标签: regexzero-padding

解决方案


Using[^0]+$将匹配除0字符串末尾之外的任何字符。那场比赛将在最后一个零之后开始0123,并将给你123作为一场比赛。

要仅获取匹配项,您可以使用除 0 或换行符以外的任何字符开始匹配,然后匹配可选字符。

[^0\n\r].*

正则表达式演示

或者您可以匹配可选的前导零,并捕获组 1 中的其余字符串。

如果只想匹配非空白字符,可以使用\S+. 要匹配除换行符以外的任何字符,您可以使用.+

^0*(\S+)

正则表达式演示


推荐阅读