c# - 如何使用 C# 从名称中删除首字母
问题描述
我需要从名字中删除首字母,例如,
KAM Paul Silvester - > 预期输出: Paul Silvester。
我找到了使用 java 的解决方案,但我需要使用 C#
public static void main(String args[])
{
String input = "K A M Paul Silvester";
input = input.replaceAll("\\b[A-Z]+(?:\\.|\\s+|$)", "").trim();
System.out.println(input);
}
我还需要检查输入名称是否有效,如果使用首字母方法的用户输入名称应返回 false,否则返回 true。我该怎么做
public bool checkName(string name)
{
}
解决方案
我认为您需要一个正则表达式来找到首字母缩写和全名,如果是这样,我建议您使用这样的正则表达式:
var match = Regex.Match(input, @"(?<initials>([A-Z] )+)?(?<name>.+)");
if (match.Success)
{
var initials = match.Groups["initials"].Value;
var name = match.Groups["name"].Value;
var hasNotInitials = string.IsNullOrWhiteSpace(initials);
}
推荐阅读
- android - 在 Flutter 中为 Web 和移动设备创建共享代码库
- c# - 使用数组中的两个参数调用存储过程
- javascript - Angular-Formly - 访问具有包含点(。)键名的计算字段的模型名称
- qt - 如何取消选择 QTabBar 中的所有选项卡?
- flutter - 如何使工具提示形状使用路径?
- java - 多模块项目中的 Gradle 构建错误:java.lang.NoClassDefFoundError: at groovyjarjarasm.asm.signature.SignatureReader.parseType
- python - 如何使用两个日期之间的特定差异从表中选择行?
- google-analytics-4 - 跟踪 Google Analytics Cookie 接受拒绝按钮点击
- python-3.x - 抓取 cdkeys[dot]com
- angular - Angular 材质媒体时间轴组件