正则表达式到 select 单词后的第一个数字

Regular expression to select the first digit after a word

我有这样的文字

number1234567890

我想 select 单词后的第一个数字,在这种情况下会导致 1

到目前为止,我使用 (\D)(\d) 正则表达式得到了 r1 的结果。

希望有人能提供帮助。提前致谢。

您可以使用

(?<=\D)\d

参见regex demo

(?<=\D) 是正后视,它要求数字以外的字符立即出现在当前位置的左侧,然后 \d 将匹配出现在右侧的数字.

或者,仅 PCRE 变体:

^\D*\K\d

参见regex demo

它将匹配字符串的开头,然后是除数字以外的任何 0+ 个字符,然后 \K 将重置匹配缓冲区,删除到目前为止匹配的所有文本,并且 \d 将匹配(第一个)数字。