0

好的,所以我有一个数据库,您可以从中获取信息,这些信息将以这种方式展示:

ID、显示名称、喜欢蛋糕、喜欢咖啡、喜欢狗

因此,如果您获得信息,它会显示类似于以下内容:

1,匿名,1,0,1

现在它不是很受欢迎,所以我想向回答过这个问题的人展示,所以我希望“1,!anonymous!,1,0,1”(! 之外的任何内容)消失。我环顾四周,发现了一个 RegExp 代码,它可以删除引号之外的东西,但这相当困难,而且我很不耐烦将所有显示名称放在引号中。

因此,如果有一个 RegExp 可以删除数字以便我可以把用户名放在上面,那就太好了。

4

2 回答 2

0

好吧,你可以这样做:

 Replae '^[^,]+([^,]+).*' With '$1'

当然,它在您的语言中的外观可能会有所不同。

但是在您的情况下,这看起来像 CSV,那么在这种情况下解析 CSV 文件不是更容易吗?例如在 PowerShell 中你可以做

Import-Csv foo.csv | select 'Display name'

同样对于在某处内置了此类解析的其他语言。此外,大多数其他选项可能会根据输入中断,因为 CSV 中的字段也可能包含逗号,这会破坏上述正则表达式和简单的拆分方法。

于 2013-07-29T12:04:17.773 回答
0

您可以拆分数据库结果字符串,然后获取相关的数组索引。

string dbString = "1,anonymous,1,0,1";
string username = dbString.Split(',')[1];

//value of username will be "anonymous"
于 2013-07-29T12:04:25.373 回答