考虑这样一个字符串,C#正则表达式替换
type="xxx.yyy.zzz, xxx.yyy, Version=2.0.3.0, Culture=neutral, PublicKeyToken=null"
我读的resx文件,并想取代上述字符串的String.Empty不管版本是什么样的所有出现,但版本格式将保持不变,并且字符串的其余部分不会改变。我尝试了一些东西,但我有点紧张;并真的很感谢这方面的帮助。谢谢。
考虑这样一个字符串,C#正则表达式替换
type="xxx.yyy.zzz, xxx.yyy, Version=2.0.3.0, Culture=neutral, PublicKeyToken=null"
我读的resx文件,并想取代上述字符串的String.Empty不管版本是什么样的所有出现,但版本格式将保持不变,并且字符串的其余部分不会改变。我尝试了一些东西,但我有点紧张;并真的很感谢这方面的帮助。谢谢。
type="xxx\.yyy\.zzz, xxx\.yyy, Version=\d+\.\d+\.\d+\.\d+, Culture=neutral, PublicKeyToken=null"
\d
表示一个数字; \d+
匹配一个或多个数字。.
是一个特殊字符,需要转义为\.
由于AC#正则表达式的字符串,它会看起来像:
pattern = "type=\"xxx\\.yyy\\.zzz, xxx\\.yyy, Version=\\d+\\.\\d+\\.\\d+\\.\\d+, Culture=neutral, PublicKeyToken=null\"";
嗯,如果有一个额外的空间或版本只指定为x.x.x或文化不是中性的话。我知道这不是你的正则表达式有错,而是缺少一些信息的问题。 – 2010-07-09 13:42:02
@lasseespeholt OP表示_rest字符串不会改变_并且我依赖于该字符串。 – Amarghosh 2010-07-09 13:47:18
是的,我知道:)再次,我知道你的正则表达式没有错误。但是额外的空间是否有资格获得“改变”? < - 问题为Bala R – 2010-07-09 13:50:15
我不明白:要更换整行与空字符串,如果它匹配的版本?或者如果它匹配'xxx.yyy.zzz'? – rakuo15 2010-07-09 13:38:36
@ rakuo15整个行。 – 2010-07-09 14:15:09