我有一堆数字说:
完整的数据总是字符串int字符串,我用它把它分成每个组
string1 = ^(.*?)\D+
int2 = (\d+)
string3 = ([a - zA - Z] *$)
但是如果数据仅是int字符串(例如123ss),我总是会出错,因为它的变量string1读取了第一位数字,有人可以告诉我我哪里出错了吗?
答案 0 :(得分:2)
要在字符串开头匹配0个或多个非数字字符,您需要将string1
定义为
string1 = ^(\D*)
它将在字符串(\D
)的开头捕获0个或多个非数字(^
)字符。
整个字符串模式看起来像
^(\D*)(\d+)(\D*)$
请参见Regulex graph:
另请参阅regex demo。