我有以下输入:
Pontos:450; Linhas:446; Xmínimo:554625; Yimínimo:9170625; Tamanhodacélula:125米; Projecao:“SAD69 UTM zone 23S”;假人:99999; X = UTM Este SAD69 Zona 23S; Y = UTM Norte SAD69 Zona 23S; gD_FOURIER_0 = Gravidade Vertical Fourier,semcorreçãodeterreno; gD_FOURIER_2p1 = Gravidade Vertical Fourier,paracorreçãodeterreno com densidade 2.1gcm³; GDD_FOURIER_0 = Gradiente GDD Fourier,semcorreçãodeterreno。 GDD_FOURIER_2p1 = Gradiente GDD Fourier,paracorreçãodeterreno com densidade 2.1gcm³; gD_FOURIER_2p1_Conformed = Gravidade Vertical Fourier,paracorreçãodeterreno com densidade2.1gcm³,corformado ao modelo DNSC08;
我想找到所有属性{any}={any};
。我尝试使用以下代码:
string pattern = @"(.*)=(.*);";
MatchCollection mc = Regex.Matches(input, pattern);
但没有成功......
答案 0 :(得分:1)
嗯,你需要比{any}
更精确。
在等号之前你可能想要的部分是"除了空格"之外的任何东西。在正则表达式中\S+
。
在等号之后,除了分号"之外,你可能还有什么呢?那是[^;]+
。
string pattern = @"(\S+)=([^;]+);";
答案 1 :(得分:1)
答案 2 :(得分:0)
答案 3 :(得分:0)
试试这个:
/([^\s]+?)=(.+?);/g
在C#中:
string pattern = @"([^\s]+?)=(.+?);";
MatchCollection mc = Regex.Matches(input, pattern);