国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - 求助關(guān)于js正則問(wèn)題

瀏覽:182日期:2022-12-16 11:56:11

問(wèn)題描述

很多情況下,我們只需要匹配表達(dá)式中間的內(nèi)容,對(duì)于匹配位置的內(nèi)容是不需要的,例如下圖的左右括號(hào),我知道零寬斷言可以做到,但是js不支持反向斷言,請(qǐng)問(wèn)有其他的正則方式一步處理到位嗎?后續(xù)字符串截取處理的方案最好不要發(fā)了javascript - 求助關(guān)于js正則問(wèn)題

問(wèn)題解答

回答1:

用正則里的捕獲組沒錯(cuò),另外擴(kuò)充下你的思路:replace方法可以結(jié)合捕獲組一起使用,逼格很高。

'transform: scale(-12312.212) rotate(-0.23deg) translateX(0.31px);'.replace(/[^(]*((-?d+.?d+w+?))[^(]*/g, function(m, p) { return p+’ ’;});// '-12312.212 -0.23deg 0.31px '

更多js正則的系統(tǒng)知識(shí),推薦深入閱讀 正則表達(dá)式前端使用手冊(cè),這篇文章我斷斷續(xù)續(xù)寫了兩個(gè)月,如果沒有用你打我,保證不還手。

回答2:

你用捕獲組去獲取呀

回答3:

正則里的Group可以實(shí)現(xiàn)你的需求。在寫你寫的正則基礎(chǔ)上,加上一對(duì)括號(hào)(表示一個(gè)Group,擴(kuò)住你真正想要的部分)即可. ((-?d+.?d+([a-z]+)?))

測(cè)試代碼, 其中myRegexp.exec方法返回的是一個(gè)數(shù)組,第一個(gè)元素是正則匹配到的字符串,包括你“不希望看到”的括號(hào)。 第二個(gè)元素(即下標(biāo)為1)對(duì)應(yīng)你正則表達(dá)式中第一個(gè)括號(hào)捕獲的內(nèi)容,也就是你想要的數(shù)字及單位部分。

var myString = ’scale(-12312.212)skdk, rotate(-0.23deg)..+-(800)-555-2468’;var myRegexp = /((-?d+.?d+([a-z]+)?))/g;match = myRegexp.exec(myString);while (match != null) { console.log(match[1]) match = myRegexp.exec(myString);}回答4:

利用正則的分組就能搞定了先用/g把目標(biāo)字符串都匹配出來(lái)然后對(duì)每個(gè)使用不帶/g的正則取到結(jié)果中的1組,也就是你需要的值,直接上代碼吧用括號(hào)括起來(lái)就是一個(gè)捕獲組,詳細(xì)用法自行g(shù)oogle

javascript - 求助關(guān)于js正則問(wèn)題

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 马龙县| 黄浦区| 上思县| 永顺县| 丽水市| 泰州市| 龙陵县| 拜泉县| 铜鼓县| 厦门市| 酉阳| 咸阳市| 应用必备| 宿迁市| 乡城县| 水城县| 石首市| 安泽县| 吉水县| 张掖市| 顺昌县| 嘉义市| 潜山县| 峡江县| 黑河市| 绥棱县| 柳林县| 道真| 吴忠市| 屯门区| 高台县| 专栏| 田林县| 祁东县| 永嘉县| 筠连县| 石林| 雷州市| 都昌县| 双牌县| 健康|