连接到字符串的通配符的正则表达式



我需要匹配一个字符串,其中第一个通配符与字符串的其余部分之间没有空格字符分隔。

(?<=<br> ).*?【.*?】 (.*?)<br>

例如,下面的例子…

<br> 一を知って二を知らず see only one side of a matter; have only a narrow understanding.<br> いつ1【一】 (itsu)<br> 

…只有这个应该匹配:

いつ1【一】 (itsu)<br> 

目前,我的regex匹配第一个<br>之后的所有内容,与括号的距离无关。(请记住括号是一个字符)

如何传达通配符应该与字符串的其余部分"连接"?

我不确定我完全理解你需要什么,但是根据你的示例模式和示例输出,你可能想要这个:

(?<=<br> )[^<]*?【[^】]*】 ([^)]*)<br>

匹配:

いつ1【一】 (itsu)<br>

解释:

  • (?<=<br> )- positive lookbehind
  • [^<]*?-非贪婪扫描所有非<字符
  • 【[^】]*】-扫描
  • - space char
  • ([^)]*)-扫描()
  • <br>-匹配<br>

最新更新