2

我一直在研究一种在 BBEdit 中查找和替换外来词的方法,但我遇到了问题。经过研究,我遇到了正则表达式-匹配外来字符的正则表达式是什么?这使我进入了 Regular-Expressions.info 并显示了一个文本块:

在 Perl、PCRE、PHP、Ruby 2.0 和 Just Great Software 应用程序中,匹配单个字素(无论是编码为单个代码点还是使用组合标记编码为多个代码点)都很容易:只需使用 \X。

当我有一个词时(是的,这是为了测试而编造的)ōallaōallaēēalla我不能用[A-Za-z]*整个词代替它在段中工作,我能想出的唯一解决方案是([A-Za-z]*\X{1,10}). 是否有另一种不会太贪婪并且会拉整个单词而不是分段拉的替代方法?

4

1 回答 1

0

您可以使用边界一词\b来匹配边界之间的所有内容。这可能无法得到一切,但对于您人为的示例,它可以工作。

/\b(.+)\b/

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

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

在 regex101.com 上试试。我无法测试这是否适用于您的 BBEdit。

于 2016-09-22T15:04:39.953 回答