js使用正則表達式獲取字符串中特定的字符


  1. 需求:從124fddr323532${xxxasdsafxx}253${bnm}23354${abcd}233545xx54${666}233545xxxxx這類字符串中獲取${}中的內容。注意${xxx}的個數是不確定的。

使用了match和exec兩種方式實現,直接上代碼(更推薦第二種):

function getMatchedStrs (str) {
        var reg = /\$\{(.+?)\}/
        var reg_g = /\$\{(.+?)\}/g
        var result = str.match(reg_g)
        var list = []
        for (var i = 0; i < result.length; i++) {
            var item = result[i]
            list.push(item.match(reg)[1])
        }
        return list
    }


function getExecStrs (str) {
        var reg = /\$\{(.+?)\}/g
        var list = []
        var result = null
        do {
            result = reg.exec(str)
            result && list.push(result[1])
        } while (result)
        return list
    }
  1. Python中:
def findAllStrs():
    strs = '124fddr3235323423532${xxxasdsafxx}253${bnm}23354${abcd}233545xx54${666}233545xxxxx'
    pattern = '\$\{(.+?)\}'
    reg = re.compile(pattern)
    result = reg.findall(strs)
    # print result
    return result


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM