A具有以下字母数字序列:
[9A1 9A10 9B2 10C1]
我想通过以下方式对其进行转换:
9A1 --> 096501
9A10 --> 096510
9B1 --> 096601
10C1 --> 106701
我需要它来执行排序。 因此,无法在字符串开头获取仅与1位数字匹配的正则表达式,例如 它应该返回我以下:
9A1 --> 9
9A10 --> 9
9B1 --> 9
10C1 --> {nothing}
所以我可以将其转换为两位数显示。
我尝试了以下操作:
^[\d]{1}
但它适用于所有情况,而不仅仅是一位数字。
答案 0 :(得分:3)
您可以从字符串^\d
的开头匹配一个数字,并使用负的超前行(?!\d)
来断言直接在右边的不是数字:
^\d(?!\d)
请注意,^[\d]{1}
可以写为^\d
,并与字符串开头的一位数字匹配。它没有考虑到直接在右边的内容。