gpt4 book ai didi

c# - 正则表达式:将名字、姓氏拆分为以逗号分隔的列表,例如 "john smith Jr."到 "john"、 "smith"、 "Jr."

转载 作者:太空宇宙 更新时间:2023-11-03 20:13:46 25 4
gpt4 key购买 nike

我正在使用 C# (asp .net),并且我有一个文本框,它接受在数据库上执行查询的名称条目。

我想使用 IN 子句获取所有可能的值,但在我的 C# 页面中我得到 1 个字符串

例如 'john smith' 所以我使用正则表达式将其分解为 'john','smith'

string text1 = "'"+Regex.Replace(text,@"[^A-Za-z0-9\-\.\']+","','")+"'";

但是对于像“John smith Jr.”这样的名字或 'Bruce O'Brien',它失败了(由于特殊字符)

我的正则表达式中缺少什么?

谢谢

最佳答案

正则表达式不是执行此操作的最简单方法。相反,我会推荐 String.Split method ,它通过定义单词之间的空白字符来工作:

string fullname = "Bruce O'Brien";
string[] names;
Char[] separators = new Char [] {' '}; // only the space character, in this case

names = fullname.Split(separators);

获得名称数组后,如果需要的话,很容易将其转换为 csv 字符串。

关于c# - 正则表达式:将名字、姓氏拆分为以逗号分隔的列表,例如 "john smith Jr."到 "john"、 "smith"、 "Jr.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18257183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com