C# 正则表达式匹配所有首字母缩略词

C# 正则表达式匹配所有首字母缩略词,c#,regex,C#,Regex,我正在寻找一个正则表达式来匹配像N.a.S.a.这样的首字母缩略词,但也可以匹配没有结束点的N.a.S.a。 此解决方案有效,但仅适用于以“.”结尾的首字母缩略词 有什么想法可以把“N.A.S.A”和“N.A.S.A.”搭配起来吗?没关系; 我是这样做的:\b[a-z0-9]\.{1,}[a-z0-9]?\bb:[a-zA-Z]\.{2,}解决方案在非捕获组中重复该模式2次或更多次。你需要确认一下。结尾处不需要: \b[a-zA-Z](?:\.[a-zA-Z])+\b 也要匹配。在最后一个字母

我正在寻找一个正则表达式来匹配像N.a.S.a.这样的首字母缩略词,但也可以匹配没有结束点的N.a.S.a。 此解决方案有效,但仅适用于以“.”结尾的首字母缩略词

有什么想法可以把“N.A.S.A”和“N.A.S.A.”搭配起来吗?

没关系; 我是这样做的:\b[a-z0-9]\.{1,}[a-z0-9]?\b

b:[a-zA-Z]\.{2,}解决方案在非捕获组中重复该模式2次或更多次。你需要确认一下。结尾处不需要:

\b[a-zA-Z](?:\.[a-zA-Z])+\b
也要匹配。在最后一个字母后加\.?:

注意:要仅匹配大写字母,请删除a-z

模式匹配

\b-前导词边界 [a-zA-Z]-1个ASCII字母 ?:\.[a-zA-Z]+-1个或更多因此,至少需要2个字母重复 \-一个点 [a-zA-Z]-1个ASCII字母 \b-尾随词边界 \.? - 1或0。查斯。
注意:要启用任何Unicode字母支持,请将[a-zA-Z]替换为\p{L},将[a-Z]替换为\p{Lu}。

如果最后一个字母没有句点,则首字母缩写词的语法无效。不管怎样,请愿书展示了你迄今为止所做的尝试。NASA是经典的,没有任何句号……在西班牙语中,复数的首字母缩略词略有不同。CununIDAutoAs缩写是C.A.A.缩略语通常指词,所以你可以考虑删除0-9这两个字母不匹配的首字母缩写词。
\b[a-zA-Z](?:\.[a-zA-Z])+\b\.?