我需要匹配一个字符串,其中第一个通配符与字符串的其余部分之间没有空格字符分隔。
(?<=<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>