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

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

python2.7 - python 正則前瞻 后瞻 無(wú)法匹配到正確的內(nèi)容

瀏覽:116日期:2022-08-02 13:34:49

問(wèn)題描述

使用 python 來(lái)測(cè)試正則前瞻 后瞻,但是怎么都沒(méi)有像官網(wǎng)說(shuō)的那樣。

題目

解析 html onclick=''里面的字符串,返回調(diào)用的函數(shù)名和參數(shù)list

表達(dá)式

根據(jù)文檔寫(xiě)的表達(dá)式: https://docs.python.org/2/lib...(?<=s*javascripts*:s*)([w]+)((.+))(?=s*;.*)

代碼

def parse_js_func(txt): ''' 從 onclick 的值中解析各種綁定時(shí)間 返回 函數(shù)名 和 參數(shù),只支持單個(gè)函數(shù)綁定的JS listener :param txt: :return: ''' func = None param = None if txt and 2 <= len(txt) <= 200:pattern = ’(?<=s*javascripts*:s*)([w]+)((.+))(?=s*;.*)’# pattern = ’(s*javascripts*:s*)?([w]+)((.+))(s*;.*)?’m = re.match(ur’’ + pattern, u’’ + txt, re.I | re.M)if m and m.lastindex >= 3: func = m.group(2) txt2 = m.group(3) if len(txt2.split(’,’)) > 1:param = [str(x).strip(’’'’) for x in txt2.split(’,’)] else:param = str(txt2).strip(’’'’) return func, param用例

onclick='javascript:func(’a’,1,2,3)' 返回 [’func’,[’a’,1,2,3]]

onclick='func(11111)'應(yīng)該返回 [’func’,11111]

問(wèn)題解答

回答1:

你那個(gè)正則是你自己寫(xiě)的吧? 向后查找要求要明確pattern的長(zhǎng)度, 試下這個(gè)正則能不能滿足要求: (1+)(([’'w,]+)?)

'’: ?
標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 崇阳县| 淳安县| 镇江市| 普兰店市| 保康县| 兴城市| 临高县| 都兰县| 阿瓦提县| 湘阴县| 连城县| 响水县| 东乌珠穆沁旗| 长岭县| 平安县| 海晏县| 黑山县| 西宁市| 永靖县| 容城县| 谷城县| 漳州市| 松潘县| 中西区| 临清市| 苍梧县| 青州市| 上饶县| 沂水县| 邯郸市| 弥渡县| 厦门市| 沧源| 亚东县| 浦东新区| 辽阳市| 乌拉特中旗| 巴青县| 彭水| 华容县| 泰安市|