使用regex look-ahead函数匹配以星号开头的单词和以下单词

使用regex look-ahead函数匹配以星号开头的单词和以下单词,regex,match,regexbuddy,Regex,Match,Regexbuddy,我需要一个正则表达式,它将匹配以星号开头的单词和其后的单词。在下面的示例中,它将与eismoud tempor和dolore magna匹配: Lorem ipsum door sit amet,concetetur adipising elit,sed do*eiusmod temporal incidedut ut laboure et*dolore magna aliqua. 我正在使用RegexBuddy。请尝试以下表达式: (? 要捕获和正则表达式匹配的所有行,可以将表达式替换为捕获行

我需要一个正则表达式,它将匹配以星号开头的单词和其后的单词。在下面的示例中,它将与eismoud tempor和dolore magna匹配:

Lorem ipsum door sit amet,concetetur adipising elit,sed do*eiusmod temporal incidedut ut laboure et*dolore magna aliqua.


我正在使用RegexBuddy。

请尝试以下表达式:

(?
要捕获和正则表达式匹配的所有行,可以将表达式替换为捕获行:

^.*?

然后在
Espresso
Design mode
中设置
多行
选项(窗口底部的选项,而不是
选项
选项卡中的选项).Et voilá!搜索结果现在包含包含我们匹配项的所有行。

如果我们有一个以最后一个单词开头的字符串,那么应该怎么办:
…sed do*eiusmod
?如果您的问题得到解决,请不要忘了选择正确的答案;)Alexey它工作得很好,非常感谢!如果行中的最后一个单词以星号开头,它应该只与该单词匹配。(虽然我不确定我的文本中是否有这样的单词)。@TotoKalvera不客气。我添加了一个非捕获组
(?:…)
也包含此案例。只有在星号前面有字母数字字符时,这才有效。@TimPietzcker你说得对。谢谢。我也解决了:)现在…你不再需要
\b
,因为(根据定义)总是会有是
*
和以下
\w+
之间的单词边界。您可以在
\*
之前执行
(?以确保
*
之前有空格或字符串的开头,如果这是您试图表达的内容。