我需要一个将单词与行中其他所有内容分开的函数

I need a function that separate a word from everything else in the line

例如,

第 1 行“玩家代号:johnny51 你可以在这里加我”

第 2 行“玩家代号:nicholas362 这是我添加到游戏中的标签”

功能后我只想看

第 1 行“johnny51”

第 2 行“nicholas362”

这可能吗?如果是的话,我真的需要一些帮助。谢谢大家

简短版本:

查找内容:^([a-zA-Z]+): ([a-zA-Z0-9_]+) (.*)$

替换为:</code></p> <p>您 <strong>需要</strong> 到 select <code>Regular expression 在替换对话框中 deselect . matches new line

更长的版本:

我猜您想用正则表达式匹配文本。关于正则表达式 (https://en.wikipedia.org/wiki/Regular_expression) 的信息来源很多。您的文本可以与以下模式匹配(“查找内容”):

^([a-zA-Z]+): ([a-zA-Z0-9_]+) (.*)$

您读作:

  • ^表示“从行中第一个字符开始匹配”;
  • ([a-zA-Z]+) 表示“匹配由至少一个小写或大写字符组成的 ”(+ 符号表示至少前一个;[ ] 表示其中之一;a-zA-Z 是有效匹配的字符范围);
  • 那么这个组后面必须跟着: (两个点和一个space);
  • 之后,必须匹配另一组。此 second 组必须至少有一个(同样是 +)小写、大写、数字或下划线字符;
  • 然后,又是space ,然后第三组由零个或多个任意字符组成(这里.表示任意字符,*表示从零到无限次匹配前的元素);
  • 所有这些都是行尾 $(称为哨兵)。

每行匹配模式后,您将有 3 个匹配组。您可以将它们用于“替换为”编辑并构建您需要的任何东西:

___

如果源文本是:

gamertag: johnny51 you can add me here
gamertag: nicholas362 this is my tag add to play

输出将是:

_gamertag_johnny51_you can add me here
_gamertag_nicholas362_this is my tag add to play

要获得完全符合您要求的输出,请仅使用 </code> 作为“替换为”。这意味着删除匹配的文本并在其位置放置第二组。第二组是玩家的名字。你会得到这个:</p> <pre><code>johnny51 nicholas362

注意这些行完全是这种格式,否则正则表达式将不匹配它们。