我正在尝试制作一个首字母缩略词。这个想法是,如果我用“美利坚合众国”字符串喂我,我将得到三个字符串的数组,“美国”,“美国”,“美国”。
然后我将显示它们垂直堆叠,第一个字母用粗体表示:
U nited
S tates of
A merica
这样做的好方法是什么?我假设它涉及某种分裂,并且包含常见单词的字符串数组,例如“of,a,if,then”等......
答案 0 :(得分:4)
使用这样的正则表达式:
Regex.Split(str, " (?!of|a|if)");
正如社区在评论中提出的那样 - 你可以用空格分隔后跟一个以大写字母开头的单词,如
Regex.Split(str, " (?=[A-Z])")
答案 1 :(得分:1)
如果你能够使用正则表达式,只要内部组(in和one)填充了所有的异常单词,([a-zA-Z]+ ?(of|in|and)?)
之类的表达式就会起作用。