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

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

即使不存在捕獲括號(hào),為什么 split 仍返回空字符串?

即使不存在捕獲括號(hào),為什么 split 仍返回空字符串?

動(dòng)漫人物 2023-11-02 17:27:13
我的代碼:var str = '<td>a</td><td>b</td>'; console.log(str.split(/<\/?td>/g));即輸出["", "a", "", "b", ""].為什么會(huì)出現(xiàn)空字符串?引用https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split,如果分隔符是包含捕獲括號(hào)的正則表達(dá)式,則每次匹配分隔符時(shí),捕獲括號(hào)的結(jié)果(包括任何未定義的結(jié)果)都會(huì)拼接到輸出數(shù)組中。但是,并非所有瀏覽器都支持此功能。然而,這顯然不相關(guān),因?yàn)椴东@括號(hào)不存在。
查看完整描述

2 回答

?
達(dá)令說

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

讓我們看一個(gè)更簡單的例子:

",a,,b,".split(",")
// ["", "a", "", "b", ""]

這和你的案子有什么關(guān)系?好吧,如果您有兩個(gè)彼此相鄰的分隔符(一個(gè)前導(dǎo)分隔符或一個(gè)尾隨分隔符),您將在結(jié)果中得到一個(gè)空字符串,因?yàn)檫@就是它們之間的內(nèi)容(并且為了維持應(yīng)該 equal 的行為x.split(a).join(a)x。在您的情況下,兩者</td><td>in the middle 都是匹配的,這意味著有 2 個(gè)“分隔符”彼此相鄰,導(dǎo)致中間為空字符串。開頭<td>的 和</td>結(jié)尾的 導(dǎo)致前導(dǎo)和尾隨分隔符,從而導(dǎo)致開頭和結(jié)尾的空字符串。


查看完整回答
反對 回復(fù) 2023-11-02
?
神不在的星期二

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

另一個(gè)答案給了你原因,我會(huì)給你一個(gè)快速的解決方案。如果您想從字符串中刪除“<td>”和“</td>”,只需將它們替換為空(刪除它們)即可。然后拆分你的子字符串。

str.replace(/<\/?td>/g, "").split("")


查看完整回答
反對 回復(fù) 2023-11-02
  • 2 回答
  • 0 關(guān)注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報(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)