正则表达式中的数字范围

Dev*_*per 0 c# regex

我有这种格式的数据

*0179*1*A*5亿,M-00,R-12113

正则表达式在这里测试http://regexstorm.net/tester

\*\d{4}\*\d{1}\*[ABCEFGHJKLMPRV]{1}(\*)\d+\,M-\d{2},R-\d{5}
Run Code Online (Sandbox Code Playgroud)

这部分12113长度应为1-5.

这部分的500000000长度应为1-13位.

所以我需要为这些部分定义一个可变长度的正则表达式.任何线索?

CSh*_*pie 5

只需使用适当的量词

\*\d{4}\*\d\*[ABCEFGHJKLMPRV](\*)\d{1,13}\,M-\d{2},R-\d{1,5}
Run Code Online (Sandbox Code Playgroud)

{x,y}表示至少x次和最多次y次.

有关更好的英语解释,请检查任何正则表达式参考.

  • 您可以将其简化为`\*\d {4}\*\d\*[ABCEFGHJKLMPRV]\*\d {1,13} \,M-\d {2},R-\d {1,5} ` (2认同)