我正在尝试使用RegEx从大字符串中获取子字符串。
子字符串的格式如下:


以数字00-99开头,后跟等号=。
可能包含至少一个字符。任何字符。
以下划线“ _”结尾。


子字符串示例:

01=#010.0000#001.0000#+10.0#AA_
02=#020.0000#002.0000#+20.0#BB_


示例完整字符串:

01=#010.0000#001.0000#+10.0#AA_02=#020.0000#002.0000#+20.0#BB_


我尝试了此表达式,但结果得到了完整的字符串。

^\d{2}=.+_$


我想念一些东西。有什么帮助吗?

最佳答案

您可以使用

\d{2}=.*?_(?=\d{2}=|$)


请参见regex demo

匹配之前,您可能还不需要数字,后面带有(?<!\d)负数:

(?<!\d)\d{2}=.*?_(?=\d{2}=|$)


\d{2}=.*?_(?=\d{2}=|$)模式匹配2个数字,=,然后匹配除换行符以外的任何0+字符,并且尽可能少,直到第一个具有两位数的_和其后的=或位于字符串的结尾。

关于c# - 使用正则表达式从字符串中获取子字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53558737/

10-11 03:58
查看更多