使用 ColdFusion 从任何单词字符串生成首字母缩略词的正则表达式

Regular Expression to generate acronym from any string of words using ColdFusion

我正在寻找一个正则表达式来从任何字符串生成首字母缩略词。假设我有一个像“A​​pple Banana Cake”这样的字符串,那么结果是“A​​BC”。另一个例子是“1 Banana 2 Orange”那么结果就是“1B2O

我尝试了下面提到的这里 - 但没有按预期工作。

writeDump(reReplaceNoCase('Apple Banana Carrot','[\B.|\P{L}]','','ALL'));
writeDump(reReplaceNoCase('Apple Banana Carrot','[\B.|\P]','','ALL'));

您可以使用

writeDump(reReplaceNoCase('Apple Banana Carrot','\B[a-zA-Z]|[^0-9a-zA-Z]','','ALL'));

参见regex demo详情:

  • \B[a-zA-Z] - 前面有单词 char
  • 的 ASCII 字母
  • | - 或
  • [^0-9a-zA-Z] - ASCII 集中的任何非字母数字字符。