在我的網站中,我想使用德文字母ß,它只存在爲小寫字母。雖然我希望所有的標題都以大寫字母(大寫)顯示,但我使用font-transform: uppercase
。但是用一個大寫的SS代替了ß字母,這是由於某些設計和編程功能而不想要的。正則表達式:將標題文本更改爲大寫
所以我在考慮preg_replace_callback
,它將HTML代碼中標題中的所有字母都改爲大寫字母。
$content = preg_replace_callback('/(<h\d>)(.*)(<\/h\d>)/', function($matches) {
return $matches[1] . mb_strtoupper($matches[2], 'UTF-8') . $matches[3];
}, $content);
因爲我總新手在正則表達式,我不知道怎麼寫那些上的標題,沒有特殊屬性或嵌套鏈接等效果很好。
基本上<h2 class="heading-italic"><a href="http://www.google.de">Google</a></h2>
應該成爲<h2 class="heading-italic"><a href="http://www.google.de">GOOGLE</a></h2>
如何將我的正則表達式的樣子,這也趕上標題與屬性和也(多)嵌套的元素?
我想推薦兩件事:1)堅持雙S用於大寫ß,因爲這被廣泛接受爲「正確」。 CSS這樣做有一個原因。這就像混合減/短劃線( -/- ),撇號/口音,[plenken](https://en.wikipedia.org/wiki/Plenken)等等:用戶理解它,但它是錯誤的。 2)[不要用正則表達式解析HTML](http://stackoverflow.com/a/1732454/3890673):-) – crusy