我有一个正则表达式,它应该*拾取字符串中的结果:
输入字符串:
Vmid Name File Guest OS Version Annotation
3 TinyCore Linux [datastore1] TinyCore Linux/TinyCore Linux.vmx otherLinuxGuest vmx-08
4 Debain6 [datastore1] Debain6/Debain6.vmx ubuntu64Guest vmx-08正则表达式:
[]][ A-Za-z /.]+.vmx [ ]正则表达式匹配字符串的以下部分:
] TinyCore Linux/TinyCore Linux.vmx但是is也应该匹配:
] Debain6/Debain6.vmx我的代码如下:
private void regexTest_Click(object sender, EventArgs e)
{
Regex regex = new Regex("[]][ A-Za-z /.]+.vmx [ ]");
MatchCollection match = regex.Matches(input);
foreach (Match matchvalue in match)
{
MessageBox.Show(matchvalue.ToString());
}发布于 2012-07-28 20:46:54
你丢失了数字\d
您的正则表达式:[]][\dA-Za-z /.]+.vmx [ ]
和我的升级\][\dA-Za-z\s/.]+\.vmx
发布于 2012-07-28 20:52:59
尝试使用类似的内容,下面的表达式将匹配]和.vmx之间的每个类型字符
\](.+?)\.vmx或者像]word/word.vmx这样的模式,请尝试
\](.+)?\/(.+?)\.vmx或常规(.)替换为特定的匹配字符
\]([a-z0-9A-Z-_\s\/]+)?\.vmx您可以通过http://gskinner.com/RegExr/轻松测试正则表达式输出

https://stackoverflow.com/questions/11701114
复制相似问题