c# - 使用字符串操作和正则表达式的 LINQ 查询结果

标签 c# regex string linq entity-framework

上下文

我像这样从数据库中检索站点列表:

DashboardEntities dashboardDB = new DashboardEntities();

var sites = dashboardDB.Instances
    .Select(attr => new SiteModel
        {
            server = attr.server,
            pool = attr.pool,
            url = attr.url,
            version = attr.version,
            client = ???
        })
    .ToList();

return sites;

对于 client,我需要像这样从 url 中获取一个子字符串:

String client = "";

Regex rgx = new Regex(@"\.[a-z-./]+");
client = rgx.Replace(attr.url, "");

rgx = new Regex("formation-");
client = rgx.Replace(client, "");

问题

如何使用正则表达式对我的 LINQ 查询进行字符串操作?

最佳答案

第二次替换甚至不需要正则表达式。您可以使用静态重载将其作为单个表达式来完成:

client = Regex.replace(attr.url, @"\.[a-z-./]+", "").Replace("formation-", "")

关于c# - 使用字符串操作和正则表达式的 LINQ 查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11507239/

相关文章:

c# - 如何在不知道使用 Linq to XML 嵌套多深的情况下查找元素?

c# - 高级 session

c# - 输入字符串的格式不正确。无法在列中存储 <>。预期 Int64

c# - MVC 如何在 IF 语句后返回 View

C Regex - 获取匹配的字符串

python - 返回空字符串而不是 IndexError

在 main 中调用函数,使用 strtok 分隔字符串(指针问题)

c# - 当不遵循特定字符(?)时,如何使用正则表达式匹配字符(')?

regex - 使用awk打印从匹配到文件结尾的行

C - 将字符串复制到链表变量中