網(wǎng)頁源碼遷移方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本公開涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別涉及一種網(wǎng)頁源碼迀移方法和裝置。
【背景技術(shù)】
[0002] 隨著HTML5 (Hyper Text Mark-up Language 5,超文本標(biāo)記語言第五版)技術(shù)的日 益完善,越來越多的開發(fā)人員開始使用HTML5來開發(fā)網(wǎng)站。
[0003] 然而,對(duì)于已有的使用HTML4開發(fā)的網(wǎng)站,為了使得該網(wǎng)站的網(wǎng)頁源碼的編程語 言能夠由HTML4迀移至HTML5,開發(fā)人員需要使用HTML5對(duì)該網(wǎng)站的網(wǎng)頁源碼進(jìn)行重新編 寫。
【發(fā)明內(nèi)容】
[0004] 本公開提供了一種網(wǎng)頁源碼迀移方法和裝置。所述技術(shù)方案如下:
[0005] 根據(jù)本公開實(shí)施例的第一方面,提供一種網(wǎng)頁源碼迀移方法,包括:
[0006] 接收迀移指令,迀移指令用于請(qǐng)求將目標(biāo)網(wǎng)頁的網(wǎng)頁源碼的編程語言由第一版本 迀移至第二版本;
[0007] 獲取目標(biāo)網(wǎng)頁的網(wǎng)頁源碼;
[0008] 將網(wǎng)頁源碼的編程語言由第一版本自動(dòng)迀移至第二版本。
[0009] 可選地,將網(wǎng)頁源碼的編程語言由第一版本自動(dòng)迀移至第二版本,包括:
[0010] 通過預(yù)設(shè)的第一正則表達(dá)式對(duì)網(wǎng)頁源碼中去除屬性值所對(duì)應(yīng)的代碼段之外的代 碼段進(jìn)行匹配;
[0011] 若對(duì)應(yīng)于第一正則表達(dá)式的匹配結(jié)果為第一初始代碼段,則獲取第一正則表達(dá)式 在第二版本中所對(duì)應(yīng)的第一迀移代碼段;
[0012] 使用第一迀移代碼段替換第一初始代碼段。
[0013] 可選地,第一正則表達(dá)式包括用于匹配聲明代碼段的正則表達(dá)式,聲明代碼段是 用于聲明網(wǎng)頁源碼的編程語言的版本的代碼段。
[0014] 可選地,將網(wǎng)頁源碼的編程語言由第一版本自動(dòng)迀移至第二版本,包括:
[0015] 通過預(yù)設(shè)的第二正則表達(dá)式對(duì)網(wǎng)頁源碼中屬性值所對(duì)應(yīng)的代碼段進(jìn)行匹配;
[0016] 若對(duì)應(yīng)于第二正則表達(dá)式的匹配結(jié)果為屬性值,則獲取第二正則表達(dá)式在第二版 本中所對(duì)應(yīng)的代碼生成格式,根據(jù)屬性值以及代碼生成格式生成第二迀移代碼段;
[0017] 確定網(wǎng)頁源碼中屬性值所對(duì)應(yīng)的第二初始代碼段;
[0018] 使用第二迀移代碼段替換第二初始代碼段。
[0019] 可選地,第二正則表達(dá)式包括如下表達(dá)式中的至少一種:
[0020] 用于匹配被第二版本遺棄的標(biāo)簽的正則表達(dá)式;
[0021] 用于匹配被第二版本遺棄的屬性的正則表達(dá)式;
[0022] 用于匹配更新標(biāo)簽的正則表達(dá)式,更新標(biāo)簽為網(wǎng)頁源碼的各個(gè)標(biāo)簽中表達(dá)方式與 第二版本中的對(duì)應(yīng)標(biāo)簽的表達(dá)方式不同的標(biāo)簽;
[0023] 用于匹配未閉合的標(biāo)簽的正則表達(dá)式;
[0024] 用于匹配大寫的標(biāo)簽名的正則表達(dá)式;
[0025] 用于匹配未被引號(hào)包含的屬性的正則表達(dá)式。
[0026] 可選地,方法還包括:
[0027] 獲取各個(gè)自定義正則表達(dá)式以及每個(gè)自定義正則表達(dá)式所對(duì)應(yīng)的代碼生成格式, 自定義正則表達(dá)式用于匹配網(wǎng)頁源碼中的自定義格式的代碼段;
[0028] 通過各個(gè)自定義正則表達(dá)式對(duì)網(wǎng)頁源碼中自定義格式的代碼段進(jìn)行匹配;
[0029] 對(duì)于任一的自定義正則表達(dá)式,若對(duì)應(yīng)于自定義正則表達(dá)式的匹配結(jié)果為屬性 值,則根據(jù)屬性值以及自定義正則表達(dá)式所對(duì)應(yīng)的代碼生成格式生成第三迀移代碼段;
[0030] 確定網(wǎng)頁源碼中對(duì)應(yīng)于自定義正則表達(dá)式的屬性值的第三初始代碼段;
[0031] 使用第三迀移代碼段替換第三初始代碼段。
[0032] 根據(jù)本公開實(shí)施例的第二方面,提供一種網(wǎng)頁源碼迀移裝置,包括:
[0033] 指令接收模塊,被配置為接收迀移指令,迀移指令用于請(qǐng)求將目標(biāo)網(wǎng)頁的網(wǎng)頁源 碼的編程語言由第一版本迀移至第二版本;
[0034] 源碼獲取模塊,被配置為獲取目標(biāo)網(wǎng)頁的網(wǎng)頁源碼;
[0035] 迀移模塊,被配置為將源碼獲取模塊獲取到的網(wǎng)頁源碼的編程語言由第一版本自 動(dòng)迀移至第二版本。
[0036] 可選地,該迀移模塊,包括:
[0037] 第一匹配子模塊,被配置為通過預(yù)設(shè)的第一正則表達(dá)式對(duì)網(wǎng)頁源碼中去除屬性值 所對(duì)應(yīng)的代碼段之外的代碼段進(jìn)行匹配;
[0038] 第一獲取子模塊,被配置為在第一匹配模塊的匹配結(jié)果為對(duì)應(yīng)于第一正則表達(dá)式 的匹配結(jié)果為第一初始代碼段時(shí),獲取第一正則表達(dá)式在第二版本中所對(duì)應(yīng)的第一迀移代 碼段;
[0039] 第一替換子模塊,被配置為使用第一迀移代碼段替換第一初始代碼段。
[0040] 可選地,第一正則表達(dá)式包括用于匹配聲明代碼段的正則表達(dá)式,聲明代碼段是 用于聲明網(wǎng)頁源碼的編程語言的版本的代碼段。
[0041] 可選地,該迀移模塊,包括:
[0042] 第二匹配子模塊,被配置為通過預(yù)設(shè)的第二正則表達(dá)式對(duì)網(wǎng)頁源碼中屬性值所對(duì) 應(yīng)的代碼段進(jìn)行匹配;
[0043] 迀移代碼段生成子模塊,被配置為在第二匹配子模塊的匹配結(jié)果為對(duì)應(yīng)于第二正 則表達(dá)式的匹配結(jié)果為屬性值時(shí),獲取第二正則表達(dá)式在第二版本中所對(duì)應(yīng)的代碼生成格 式,根據(jù)屬性值以及代碼生成格式生成第二迀移代碼段;
[0044] 初始代碼段確定子模塊,被配置為確定網(wǎng)頁源碼中屬性值所對(duì)應(yīng)的第二初始代碼 段;
[0045] 第二替換子模塊,被配置為使用第二迀移代碼段替換第二初始代碼段。
[0046] 可選地,該第二正則表達(dá)式包括如下表達(dá)式中的至少一種:
[0047] 用于匹配被第二版本遺棄的標(biāo)簽的正則表達(dá)式;
[0048] 用于匹配被第二版本遺棄的屬性的正則表達(dá)式;
[0049] 用于匹配更新標(biāo)簽的正則表達(dá)式,更新標(biāo)簽為網(wǎng)頁源碼的各個(gè)標(biāo)簽中表達(dá)方式與 第二版本中的對(duì)應(yīng)標(biāo)簽的表達(dá)方式不同的標(biāo)簽;
[0050] 用于匹配未閉合的標(biāo)簽的正則表達(dá)式;
[0051] 用于匹配大寫的標(biāo)簽名的正則表達(dá)式;
[0052] 用于匹配未被引號(hào)包含的屬性的正則表達(dá)式。
[0053] 可選地,該裝置還包括:
[0054] 信息獲取模塊,被配置為獲取各個(gè)自定義正則表達(dá)式以及每個(gè)自定義正則表達(dá)式 所對(duì)應(yīng)的代碼生成格式,自定義正則表達(dá)式用于匹配網(wǎng)頁源碼中的自定義格式的代碼段;
[0055] 源碼匹配模塊,被配置為通過各個(gè)自定義正則表達(dá)式對(duì)網(wǎng)頁源碼中自定義格式的 代碼段進(jìn)行匹配;
[0056] 迀移代碼段生成模塊,被配置為對(duì)于任一的自定義正則表達(dá)式,若對(duì)應(yīng)于自定義 正則表達(dá)式的匹配結(jié)果為屬性值,則根據(jù)屬性值以及自定義正則表達(dá)式所對(duì)應(yīng)的代碼生成 格式生成第三迀移代碼段;
[0057] 初始代碼段確定模塊,被配置為確定網(wǎng)頁源碼中對(duì)應(yīng)于自定義正則表達(dá)式的屬性 值的第三初始代碼段;
[0058] 代碼段替換模塊,被配置為使用第三迀移代碼段替換第三初始代碼段。
[0059] 根據(jù)本公開實(shí)施例的第三方面,提供一種網(wǎng)頁源碼迀移裝置,包括:
[0060] 處理器;
[0061] 用于存儲(chǔ)處理器可執(zhí)行指令的存儲(chǔ)器;
[0062] 其中,處理器被配置為:
[0063] 接收迀移指令,迀移指令用于請(qǐng)求將目標(biāo)網(wǎng)頁的網(wǎng)頁源碼的編程語言由第一版本 迀移至第二版本;
[0064] 獲取目標(biāo)網(wǎng)頁的網(wǎng)頁源碼;
[0065] 將網(wǎng)頁源碼的編程語言由第一版本自動(dòng)迀移至第二版本。
[0066] 本公開的實(shí)施例提供的技術(shù)方案可以包括以下有益效果:
[0067] 通過在接收到迀移指令時(shí),獲取目標(biāo)網(wǎng)頁的網(wǎng)頁源碼,并將該網(wǎng)頁源碼的編程語 言由第一版本迀移至第二版本;解決了相關(guān)技術(shù)中需要開發(fā)人員使用HTML5對(duì)網(wǎng)站的網(wǎng)頁 源碼進(jìn)行重新編寫的問題;達(dá)到了可以提高網(wǎng)頁源碼的編程語言的迀移效率的效果。同時(shí), 由于開發(fā)人員重新編寫過程中很容易會(huì)出現(xiàn)編寫錯(cuò)誤,所以上述網(wǎng)頁源碼迀移方法也提高 了迀移過程中的準(zhǔn)確率。
[0068] 應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性的,并不能限制本 公開。
【附圖說明】
[0069] 此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實(shí)施 例,并于說明書一起用于解釋本發(fā)明的原理。
[0070] 圖1是根據(jù)一示例性實(shí)施例示出的一種網(wǎng)頁源碼迀移方法的流程圖。
[0071]