久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

javascript - 求助關于js正則問題

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

問題描述

很多情況下,我們只需要匹配表達式中間的內容,對于匹配位置的內容是不需要的,例如下圖的左右括號,我知道零寬斷言可以做到,但是js不支持反向斷言,請問有其他的正則方式一步處理到位嗎?后續字符串截取處理的方案最好不要發了javascript - 求助關于js正則問題

問題解答

回答1:

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

'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正則的系統知識,推薦深入閱讀 正則表達式前端使用手冊,這篇文章我斷斷續續寫了兩個月,如果沒有用你打我,保證不還手。

回答2:

你用捕獲組去獲取呀

回答3:

正則里的Group可以實現你的需求。在寫你寫的正則基礎上,加上一對括號(表示一個Group,擴住你真正想要的部分)即可. ((-?d+.?d+([a-z]+)?))

測試代碼, 其中myRegexp.exec方法返回的是一個數組,第一個元素是正則匹配到的字符串,包括你“不希望看到”的括號。 第二個元素(即下標為1)對應你正則表達式中第一個括號捕獲的內容,也就是你想要的數字及單位部分。

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把目標字符串都匹配出來然后對每個使用不帶/g的正則取到結果中的1組,也就是你需要的值,直接上代碼吧用括號括起來就是一個捕獲組,詳細用法自行google

javascript - 求助關于js正則問題

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 欧美性www | 国产玖玖 | 国产欧美综合一区二区三区 | 日日想日日干 | 日韩成人在线一区 | 欧美日韩电影一区 | 日韩污视频在线观看 | 国产精品一二区 | 欧美一级片在线 | 欧美日韩精品久久 | 日b片| 在线视频亚洲 | 国产中文一区二区三区 | 97精品国产| 一区免费 | 欧美黄色一区二区 | 日韩国伦理久久一区 | 日本免费一区二区在线观看 | 青青久视频 | 欧美精品一区二区三区四区 | 国产精品久久久久久久久久久杏吧 | 欧美伦理电影一区二区 | 在线成人一区 | 青青草一区 | 国产在线观看高清 | 精品一区免费 | 中文字幕视频在线免费 | 手机看片169 | 一区二区视频网站 | jlzzjlzz亚洲日本少妇 | 久久成人一区 | 日本一级在线观看 | 91高清在线 | 精品日韩视频 | 国产精品一区二区视频 | 香蕉视频一级片 | 九九热这里只有精品在线观看 | 日韩国产一区二区 | 午夜影视 | 欧美激情国产日韩精品一区18 | 国产欧美综合一区二区三区 |