基礎語法 SEARCH搜尋指定字串詳解

2021-08-11 11:37:20 字數 2306 閱讀 6129

今天遇到乙個問題:讀取伺服器目錄返回資料夾資訊,如果資料夾不存在就建立,下面是返回的資訊

資料夾是以日期、日期的前六位命名的,此例中如果我們直接search 201503,雖然成功,但我們不能判斷是不是20150315資料夾,查閱資料用sy-fdpos解決問題。

解決思路:先獲取201503字串的位置,然後偏移量l_fdpos = sy-fdpos + 6 ; 判斷gt_res-line+l_fdpos(2)是否為空來判斷是不是201503資料夾。

以下是補充擴充套件內容:

1、search f fro g :g表示被搜尋的字串。

2、search itab for g:g表示被搜尋字串。

通過系統變數sy-subrc可以回執字串查詢的結果,若回執等於"0",則表示查詢成功。某段字元在字串中的具體位置儲存在系統變數sy-fdpos中。

例項:

data search_str(50).

move 'welcome to sap world!' to search_str.

search search_str for 'wld' abbreviated.

write: / 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos. "執行結果:wld按順序包含在子字串'world'中,sy-subrc=0,sy-fdpos=15

search search_str for 'sap' starting at 10.

write: / '從第十位開始:',

/ 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos. "執行結果:從第10位開始查詢,sy-subrc=0,sy-fdpos=2

search search_str for 'sap' ending at 10.

write: / '查詢第十位結束:',

/ 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos. "執行結果:查詢到第10位結束,sy-subrc=4,sy-fdpos=0

search search_str for '*ap' and mark.

write: / '查詢包含ap的子字串,sap符合條件,預設為查詢sap:',

/ 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos. "查詢包含'ap'子字串,'sap'符合條件,預設為查詢'sap',sy-subrc=0,sy-fdpos=11

search search_str for '*a' and mark.

write: / '匹配字串必須是子字串以空格分開的最後幾位:',

/ 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos. "匹配字串必須是子字串以空格分開的最後幾位,sy-subrc=4,sy-fdpos=0

對於一些特殊符號,如"*"、"@"、"."等,需要在其兩邊加上頓號作為修飾。如某字串為"aaa*bbb",查詢符號"*"的位置。

data search_str2(50).

move 'aaa*bbb' to search_str2.

search search_str2 for '.*.' abbreviated.

write: / 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos.

從內錶中查詢字串方法與上面基本類似,若內錶有多行,那麼字串查詢位置預設為從某行資料第一位開始。

data:begin of t_inf occurs 0,

line(80),

end of t_inf.

*定義型別後,新增兩行資料

search t_inf for 'sap' abbreviated.

write: / 'sy-subrc=',sy-subrc,

/ 'sy-fdpos=',sy-fdpos. "從內錶第一行中可查詢到,sy-subrc=0,sy-fdpos=6

search t_inf for 'am' abbreviated.

write: / 'sy-subrc=',sy-subrc, "從內錶第二行中可查詢到,sy-subrc=0,sy-fdpos=2

/ 'sy-fdpos=',sy-fdpos.

python基礎語法 4 字典

例如 phonebook 字典和列表的不同 x x 42 footbar traceback most recent call last file line 1 in?indexerror list assigment index out of range x x 42 footbar x字典應用舉...

在man中搜尋指定章節的關鍵字

有個 選項,可以在手冊的簡短描述中搜尋關鍵字 則搜尋全文 這個很有用。比如,我只記得 有個可以繫結 的系統呼叫,但又記不得叫什麼名字,此時可以man k sched或者man k affinity,甚至只要affinity前幾個字母。乙個問題,如何只在某乙個章節裡搜尋?比如,我想看看什麼命令裡的簡述...

Python語法基礎系列12 字典

字典是 python 中非常重要的資料結構之一,屬於容器型資料型別,可以通過鍵值對同時儲存多個資料。1.什麼是字典 dict 1.1 什麼是字典 字典是容器型資料型別,將 作為容器的標誌,裡面多個元素用逗號隔開,但是字典中的元素是鍵值對 可變的 支援增刪改 無序 不支援下標操作 1.2 鍵值對 字典...