bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

如何使用ABAP正則表達式解析HTML標簽-創新互聯

小編給大家分享一下如何使用ABAP正則表達式解析HTML標簽,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

成都創新互聯堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網站建設、成都網站設計、企業官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的東昌網站設計、移動媒體設計的需求,幫助企業找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!

需求就是我用ABAP的某個函數從數據庫讀取一個字符串出來,該字符串的內容是一個網頁。

網頁的form里包含了很多隱藏的input field。我的任務是解析出name為svyValueGuid的input field的值:FA163EEF573D1ED89E89C7FE5E7C4715

如何使用ABAP正則表達式解析HTML標簽

最簡單粗暴的做法是:利用ABAP的FIND FIRST OCCURRENCE關鍵字首先找到svyValueGuid的偏移量,然后從這個偏移量出發,再找到第一個>的偏移量,這樣問題就化簡為在子串type="hidden" value="FA163EEF573D1ED89E89C7FE5E7C4715",這樣問題就簡單多了。但是這種辦法比較笨重,代碼很冗余。

有沒有更快捷的辦法呢?那就是使用ABAP regular expression,即正則表達式。

請看下列的測試代碼:

REPORT ztest_interface.
DATA: lv_input TYPE string,
reg_pattern TYPE string.
lv_input = `<body>` &&
`<div class="Title">Jerry's Programming Skill survey</div>` &&
`<form action="Survey.htm?sap-client=001">` &&
`<input name="svyApplicationId" type="hidden" value="CRM_SURVEY_ACTIVITY">` &&
`<input name="svyValueGuid" type="hidden" value="FA163EEF573D1ED89E89C7FE5E7C4715">` &&
`<input name="SurveyId" type="hidden" value="JERRY_TEST">` &&
`<div Id="" class="Section1">` && `</form></body>`.
reg_pattern = '.*svyValueGuid(?:.*)value="(.*)">.*SurveyId.*'.
TRY.
DATA(lo_regex) = NEW cl_abap_regex( pattern = reg_pattern ).
DATA(lo_matcher) = lo_regex->create_matcher( EXPORTING text = lv_input ).
IF lo_matcher->match( ) <> abap_true.
WRITE:/ 'fail in input scan!'.
RETURN.
ENDIF.
DATA(lt_reg_match_result) = lo_matcher->find_all( ).
READ TABLE lt_reg_match_result ASSIGNING FIELD-SYMBOL(<match>) INDEX 1.
READ TABLE <match>-submatches ASSIGNING FIELD-SYMBOL(<sub>) INDEX 1.
data(lv_sub) = lv_input+<sub>-offset(<sub>-length).
WRITE:/ 'result: ', lv_sub.
CATCH cx_root INTO DATA(cx_root).
WRITE:/ cx_root->get_text( ).
RETURN.
ENDTRY.

執行結果:

如何使用ABAP正則表達式解析HTML標簽

解決問題的核心思路是這個正則表達式:.svyValueGuid(?:.)value="(.)">.SurveyId.***

通過捕獲分組操作符,一對小括號,將32位的GUID值進行捕獲。這種解法比FIND FIRST OCCURANCE的代碼量要少。

看完了這篇文章,相信你對“如何使用ABAP正則表達式解析HTML標簽”有了一定的了解,如果想了解更多相關知識,歡迎關注創新互聯-成都網站建設公司行業資訊頻道,感謝各位的閱讀!

當前名稱:如何使用ABAP正則表達式解析HTML標簽-創新互聯
文章位置:http://vcdvsql.cn/article20/ddphco.html

成都網站建設公司_創新互聯,為您提供網站設計公司軟件開發面包屑導航小程序開發網站內鏈網站制作

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網站建設