Regex: Check if string contains at least one digit

后端 未结 9 2127
盖世英雄少女心
盖世英雄少女心 2020-12-09 07:40

I have got a text string like this:

test1test

I want to check if it contains at least one digit using a regex.

What would this reg

9条回答
  •  感动是毒
    2020-12-09 07:50

    I'm surprised nobody has mentioned the simplest version:

    \d
    

    This will match any digit. If your regular expression engine is Unicode-aware, this means it will match anything that's defined as a digit in any language, not just the Arabic numerals 0-9.

    There's no need to put it in [square brackets] to define it as a character class, as one of the other answers did; \d works fine by itself.

    Since it's not anchored with ^ or $, it will match any subset of the string, so if the string contains at least one digit, this will match.

    And there's no need for the added complexity of +, since the goal is just to determine whether there's at least one digit. If there's at least one digit, this will match; and it will do so with a minimum of overhead.

提交回复
热议问题