Reg 表达式和可选匹配组

  • 本文关键字:表达式 Reg regex
  • 更新时间 :
  • 英文 :


>我遇到了一个问题,我的字符串可能有 2 或 4 个匹配组

2 的文本如下所示

<FONT FACE="Arial,Helvetica" size=2>1260 CORONA POINTE STE 120<br/>CORONA, CA  92879<br/><br/></font></td></tr> 

4个比赛组

<FONT FACE="Arial,Helvetica" size=2>4010 BARRANCA PKWY STE 120<br/>IRVINE, CA  92604<br/><A HREF = "pplinfo.asp?License_id=01241755">01241755</A> Oldhouse, Charles  - Branch/Division Manager<br><br/><br/></font>

这是我用来匹配 4 的正则表达式

<FONT FACE="Arial,Helvetica" size=2>(.*?)<br/>(.*?)<br/>.*License_id=(d*).*</A>(.*?)<br>

有没有办法让这个表达式也匹配只有 2 的字符串?

这个问题

看起来很熟悉。

给你

<FONT[ ]FACE="Arial,Helvetica"[ ]size=2>(.*?)<br/>(.*?)<br/>(?:.*License_id=(d*)(?:.*</A>(.*?)<br>)?)?

https://regex101.com/r/O8Ctn2/1

格式 化

 <FONT [ ] FACE="Arial,Helvetica" [ ] size=2>
 ( .*? )                       # (1)
 <br/>
 ( .*? )                       # (2)
 <br/> 
 (?:
      .* License_id=
      ( d* )                       # (3)
      (?:
           .* </A>
           ( .*? )                       # (4)
           <br>
      )?
 )?

最新更新