我想要搜索{{ upc }}并開始捕獲,不是從<div比賽開始前開始,而是從<div比賽開始前的第二個開始<div class="form-group">,即捕獲不是到</div>比賽后的第一個,而是從第二個開始,即結束</div>或下一個開始時<div class="form-group">(取決于你如何看待它)這是我想要搜索和替換的示例 HTML/Twig 模板。<div class="form-group"> <label class="col-sm-2 control-label" for="input-sku"><span data-toggle="tooltip" title="{{ help_sku }}">{{ entry_sku }}</span></label> <div class="col-sm-10"> <input type="text" name="sku" value="{{ sku }}" placeholder="{{ entry_sku }}" id="input-sku" class="form-control"/> </div></div><div class="form-group"> <label class="col-sm-2 control-label" for="input-upc"><span data-toggle="tooltip" title="{{ help_upc }}">{{ entry_upc }}</span></label> <div class="col-sm-10"> <input type="text" name="upc" value="{{ upc }}" placeholder="{{ entry_upc }}" id="input-upc" class="form-control"/> </div></div><div class="form-group"> <label class="col-sm-2 control-label" for="input-ean"><span data-toggle="tooltip" title="{{ help_ean }}">{{ entry_ean }}</span></label> <div class="col-sm-10"> <input type="text" name="ean" value="{{ ean }}" placeholder="{{ entry_ean }}" id="input-ean" class="form-control"/> </div></div>預期的正則表達式匹配如下:<div class="form-group"> <label class="col-sm-2 control-label" for="input-upc"><span data-toggle="tooltip" title="{{ help_upc }}">{{ entry_upc }}</span></label> <div class="col-sm-10"> <input type="text" name="upc" value="{{ upc }}" placeholder="{{ entry_upc }}" id="input-upc" class="form-control"/> </div></div>感謝所有幫助。謝謝。
2 回答

守著星空守著你
TA貢獻1799條經驗 獲得超8個贊
您可以嘗試的一件事是使用否定前瞻來過濾掉您不希望包含在匹配中的內容。例如,匹配 a <div
,后跟任何內容,然后再匹配另一個<div
,可以匹配諸如 之類的內容<div></div><div>
。
相反,您可以說的是匹配<div
,然后是任何內容(只要不是</div>
),然后是另一個<div
。
<div (?:(?!</div>).)* <div
然后,您可以在表達式中通常寫入 的任何位置插入相同的子模式.*
。在這種特殊情況下,您可以重復該操作,以確保您沒有在 之前點擊結束 div UPC
,然后繼續該{{ UPC }}
部分。
<div(?:(?!</div>).)*<div (?:(?!</div>).)* {{ upc }} .*?</div>\s*</div>

慕的地8271018
TA貢獻1796條經驗 獲得超4個贊
您需要解析div
所需的 ,然后吸收其中的所有內容并排除其余內容。
[\w\W]
表示匹配單詞和非單詞。例如,它匹配換行符,但事實*
并非如此。
[\w\W]*(<div[\w\W]*?<div[\w\W]*?{{ sku }}[\w\W]*?<\/div>[\w\W]*?<\/div>)[\w\W]*
- 2 回答
- 0 關注
- 206 瀏覽
添加回答
舉報
0/150
提交
取消