iT邦幫忙

0

正規表達式 ... width=" * "

我正規表達式不及格...快瘋了

width="XXX"

不管 XXX 是多少
我想把這個字串取代掉

https://regexr.com/

我用這個蛋疼了
/(width=?"*")/g
救命啊,有大大能解說一下嗎

froce iT邦大師 1 級 ‧ 2018-10-03 04:50:22 檢舉
去惡補一下正則。網頁幾乎逃不了正則。
你是要整串刪除?
柯柯 iT邦新手 3 級 ‧ 2018-10-03 09:19:10 檢舉
用 $('div').attr('width','XXX') 用JS取代不能嗎@@?
還是你是把網頁讀成文字在取代?
ccutmis iT邦高手 2 級 ‧ 2018-10-03 10:32:02 檢舉
Search:
(width=")([^"]*)(")
Replace:
$1要替代的字串$3
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
froce
iT邦大師 1 級 ‧ 2018-10-03 05:04:12
最佳解答

要抓到整串的話

/width=["']\d+(px|cm|%|vh|em|vw)["']/ig

i是大小寫不分

火爆浪子 iT邦研究生 1 級 ‧ 2018-10-03 12:23:12 檢舉

正規真不好搞懂

1
fillano
iT邦超人 1 級 ‧ 2018-10-03 09:36:23

簡單一點的話:

var t = '<img width="XXX"/>';
console.log(t.replace(/(width=["']+)[^"']+(["']+)/, "$1YYY$2"));
//顯示:<img width="YYY"/>

正規表達式的參數就看你需要下,例如沒有g的話,只會取代第一個找到的pattern等等。

火爆浪子 iT邦研究生 1 級 ‧ 2018-10-03 14:34:07 檢舉

感謝大師

我要發表回答

立即登入回答