簡體   English   中英

php正則表達式幫助

[英]php regular expression help

我正在使用插件在圖像上添加陰影,並且還在同一站點上使用燈箱。 這是我正在編輯的wordpress插件中的功能:

function filter($content) {
return preg_replace_callback('#<img.+?src\s*=\s*["|\'](.+?)["|\'].+?>#isu', array($this, 'filter_callback'), $content);
}

它的作用是為所有圖像添加一個濾鏡,然后濾鏡添加陰影。 但是我不希望它為所有圖像添加過濾器。 因為這樣做的確以某種方式將燈箱搞砸了。 因此,我想在上方編輯此行,以確保僅當它位於特定的div或頁面中才能使用過濾器。 否則,另一種方法可能是不過濾特定的div或頁面中的內容。

我很高興獲得有關如何也可以編輯這些正則表達式的某種教程。

我知道它不會在所有地方都有效,但是為什么不只使用CSS3 盒形陰影呢?

如果您使用燈箱,則意味着您依賴於網站上的Javascript。

您為什么不(非常有用)跳轉到jQuery並使用jQuery(非常有用)選擇器來執行此操作。 不必為某個陌生的位置重新注冊,只需執行以下操作

$('.lightbox-photo').addClass('filter')

我知道這不能完全回答您的問題,但是我認為這是一種更通用的解決方案。

除非也更改了回調函數,否則無法使用正則表達式進行描述,因為:

  1. PHP中不允許使用靈活長度的lookbehinds
  2. 如您所描述的那樣做,同時避免后面的靈活長度,將會改變發送給回調函數的值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM