无法在字符串中获取正则表达式匹配的值 - c#

我有一个带有列表框的表单,在此列表框中,我有来自.xml文件的数据。

当我选择一个输入时,我会在var字符串中使用以下命令获取此输入的值:

string s = lstCust.SelectedItem.ToString();

它给了我:“ John Doe,JohnDoe @ stack.io电话:00336598745”

现在我只想获取邮件地址,因此我正在使用此Regex进行尝试:

@"([A-Za-z0-9._ % -] +@[A-Za-z0-9.-] +\.[a-zA-Z]{2,4})*"

用这种方法:

string mail = Regex.Match(s, @"([A-Za-z0-9._ % -] +@[A-Za-z0-9.-] +\.[a-zA-Z]{2,4})*").Value;

我确定我的Regex有效,因为

Regex.Match(s, @"([A-Za-z0-9._ % -] +@[A-Za-z0-9.-] +\.[a-zA-Z]{2,4})*").Success.ToString();

给我一个true

但是我的var邮件的值始终等于“”(空)。

知道我在做什么错吗?

谢谢

参考方案

您的正则表达式模式中有空格,以防止其不匹配。删除空格和末尾的*

string mail = Regex.Match(s, @"([A-Za-z0-9._ % -]+@[A-Za-z0-9.-]+\.[a-zA-Z]{2,4})").Value;

Regex Storm Example

用大写字母拆分字符串,但忽略AAA Python Regex - python

我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…

java split regex-字符的任意组合 - java

我正在使用3个字符分割字符串:空格,破折号和逗号我想要的是能够使用这3个字符的任意组合进行拆分,例如:-,(破折号后跟逗号)或,--(逗号后加2破折号)或- , -(破折号,逗号间隔破折号)等 String address = "Sector -18B, Dwarka"; String[] addressParts = address.s…

当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java

我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…

改造正在返回一个空的响应主体 - java

我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…

如何使用正则表达式删除特定字符 - c#

我该如何解决?请不要介意数据注释的文本,这仅用于测试。我将如何删除数据注释? [SuppressMessage("Microsoft.Globalization", "CA1303:Do not pass literals as localized parameters", MessageId = "YouS…