我試圖從單個單詞沒有空格的html屬性中刪除單引號和雙引號。我寫這個正則表達式這不工作:從html屬性中刪除單引號和雙引號,除了href和src之外的所有屬性上都沒有空格
/((type|title|data-toggle|colspan|scope|role|media|name|rel|id|class|rel)\s*(=)\s*)(\"|\')(\S+)(\"|\')/ims
如何,而不是指定,我想去除引號中的所有HTML標記過,我寧願只列出了幾個屬性,忽略像src和href和刪除引號在所有其他屬性名稱上。所以我寫了下面的那個,但是對我來說這是行不通的。它有一些如何檢測除href和src之外的任何屬性名稱。我嘗試了各種組合。
/((?!href|src)(\S)+\s*(=)\s*)(\"|\')(\S+)(\"|\')/i
我試過這個,但它不起作用。它只是將h和s從href和src的屬性中刪除。我知道我很接近但錯過了一些東西。我在這花了5個小時。
工作示例
$html_code = 'your html code here.';
preg_replace('/((type|title|data-toggle|colspan|scope|role|media|name|rel|id|class|rel)\s*(=)\s*)(\"|\')(\S+)(\"|\')/i', '$1$5', "$html_code");
[相關](http://stackoverflow.com/a/4234491/471272)。 – tchrist