第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何通過 RegEx-PHP 更改 HTML 字符串中的“基本 Url”

如何通過 RegEx-PHP 更改 HTML 字符串中的“基本 Url”

PHP
肥皂起泡泡 2023-08-26 15:56:26
我正在開發(fā)一個(gè)需要解析和操作 HTML 的項(xiàng)目。我需要替換 HTML 字符串中的“Base Url”。我正在嘗試使用正則表達(dá)式來達(dá)到此目的。我嘗試了多種模式,但沒有運(yùn)氣。下面是我當(dāng)前的代碼 -<?php$html = '<html><head><base href="/" /></head><body></body></html>';$base = 'https://SOME_URL/';$output = preg_replace('/<base href="(.+)">/', $base, $html);print $output;電流輸出 - $html = '<html><head><base href="/" /></head><body></body></html>';預(yù)期輸出 - $html = '<html><head><base href="https://SOME_URL/" /></head><body></body></html>';
查看完整描述

2 回答

?
翻過高山走不出你

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊

您的正則表達(dá)式 - <base href="(.+)">, 不匹配,因?yàn)楹竺娴牟糠?code>"(.+)"是錯(cuò)誤的。查看源字符串 -<base href="/" />看到了嗎 ?和/?然后>_

這只是使用正則表達(dá)式解析 HTML 不是一個(gè)好主意的眾多原因之一。即使沒有那個(gè)空格,甚至可能沒有那個(gè),該元素也是完全有效的/。

但是,如果您 100% 確信該元素的位置base不會(huì)變得太復(fù)雜(例如大量嵌套、屬性之間的新行等)。你也許可以通過——/<base[ ]*?href=".+"/i

查看演示

在 PHP 中,為了獲得預(yù)期的輸出,你可以這樣做-

$base = 'https://SOME_URL/';


$output = preg_replace('/(<base[ ]*?href=").+(")/', "$1$base$2", $html);


查看完整回答
反對(duì) 回復(fù) 2023-08-26
?
慕碼人2483693

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超9個(gè)贊

嘗試這個(gè)模式

(?<=<base\s)href="(.*?)"

查看演示

  $html = '<html><head><base href="/" /></head><body></body></html>';

  $base = 'https://SOME_URL/';

  res=$html.replace(/(?<=base\s)href="([^"]*)"/,`"${$base}"`)

  console.log(res)


查看完整回答
反對(duì) 回復(fù) 2023-08-26
  • 2 回答
  • 0 關(guān)注
  • 157 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)