如何在BBEdit中匹配外来词

How to match foreign wods in BBEdit

我一直在研究一种在 BBEdit 中查找和替换外来词的方法,但我遇到了问题。经过研究,我 运行 跨越了 Regex - What would be regex for matching foreign characters?,这让我找到了 Regular-Expressions.info 和一个文本块:

Matching a single grapheme, whether it's encoded as a single code point, or as multiple code points using combining marks, is easy in Perl, PCRE, PHP, Ruby 2.0, and the Just Great Software applications: simply use \X.

当我有一个词时(是的,这是为了测试而编造的)ōallaōallaēēalla我不能对整个词使用[A-Za-z]*,而是它分段工作,这是我一直以来唯一的解决方案能够想出的是 ([A-Za-z]*\X{1,10}) 之类的东西。有没有一种替代方法不会过于贪婪并且会提取整个单词而不是将其分成几个部分?

您可以使用边界一词 \b 来匹配边界之间的所有内容。这可能无法解决所有问题,但对于您人为设计的示例而言,它是可行的。

/\b(.+)\b/

如果您还希望在行首包含单词,则需要包含这些单词。

/(?:\b|^)(.+)\b/

Try it at regex101.com。不过,我无法测试这是否适用于您的 BBEdit。