2013-04-28 136 views
0

我需要使用正则表达式从字符串//table[@data-account='test']//span[contains(.,'FB')]得到//table[@data-account='test']使用正则表达式获取字符串的一部分

我是新来的正则表达式,不能使用现有的样本用于我的目的。 谢谢

+0

[本教程](http://www.regular-expressions.info/tutorial.html)是关于该主题的非常不错的阅读,应该让您快速掌握正则表达式。这绝对是宝贵的知识,你肯定会重用。无论如何:一个输入输出对不足以让我们判断输入的哪一部分是固定的,哪一部分是可变的,甚至可以证明这里使用正则表达式是合理的。 – 2013-04-28 15:46:08

+0

它可以没有正则表达式,它是你唯一的选择吗?你对其他方式感兴趣吗? – Mehran 2013-04-28 15:49:24

回答

0

你不需要正则表达式。你可以使用String.Split方法;

返回一个字符串数组,其中包含此字符串 中的子字符串,它们由指定字符串数组的元素分隔。

string s = @"//table[@data-account='test']//span[contains(.,'FB')]"; 
string[] stringarray = s.Split(new string[1] {@"//"}, StringSplitOptions.RemoveEmptyEntries); 
Console.WriteLine("//" + stringarray[0]); 

输出将是;

//table[@data-account='test'] 

这里是一个DEMO

0
using System; 
using System.Text.RegularExpressions; 

class P 
{ 
    static void Main() 
    { 
     Console.WriteLine(
      Regex.Match("//table[@data-account='test']//span[contains(.,'FB')]", "^([^]]+])").Groups[1].Value); 
    } 
} 
+0

哇!谢谢!惊人 – user2329418 2013-04-28 23:21:06

相关问题