国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      彈幕消息解析方法、裝置及電子設(shè)備與流程

      文檔序號(hào):11389121閱讀:299來(lái)源:國(guó)知局
      彈幕消息解析方法、裝置及電子設(shè)備與流程

      本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,具體而言,涉及一種彈幕消息解析方法、裝置及電子設(shè)備。



      背景技術(shù):

      隨著終端設(shè)備的快速發(fā)展,視頻直播的興起,越來(lái)越多的人們能夠欣賞到各種趣味的視頻直播。直播是一個(gè)信息交互和實(shí)時(shí)性非常強(qiáng)的行業(yè),特別是文字和表情等消息的交互量非常多,有些超過(guò)幾萬(wàn)甚至上十萬(wàn)的直播間,彈幕刷新速度非常快。

      現(xiàn)有的技術(shù)中通常直接用自定義的消息協(xié)議傳輸彈幕消息,自定義的消息就是預(yù)先定義規(guī)則將彈幕消息轉(zhuǎn)變?yōu)榻Y(jié)構(gòu)精簡(jiǎn)字符串,但是在對(duì)字符串進(jìn)行處理時(shí)通常會(huì)存在冗余判斷和處理,進(jìn)而造成終端設(shè)備在消息量過(guò)多時(shí),出現(xiàn)彈幕消息顯示實(shí)時(shí)性差的問(wèn)題。



      技術(shù)實(shí)現(xiàn)要素:

      有鑒于此,本發(fā)明的目的在于提供一種彈幕消息解析方法、裝置及電子設(shè)備,以改善上述問(wèn)題。

      為了達(dá)到上述目的,本發(fā)明實(shí)施例提供一種彈幕消息解析方法,所述方法包括:

      判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件;

      在所述彈幕消息字符串滿足長(zhǎng)度預(yù)設(shè)條件時(shí),根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串;

      在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。

      可選的,在上述彈幕消息解析方法中,根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串的步驟包括:

      判斷所述彈幕消息字符串的末尾字符是否為第一預(yù)設(shè)字符;

      在所述彈幕消息字符串的末尾字符不為所述第一預(yù)設(shè)字符時(shí),根據(jù)預(yù)設(shè)拼接函數(shù)向所述彈幕消息字符串的末尾字符后面拼接所述第一預(yù)設(shè)字符得到構(gòu)造字符串;

      在所述彈幕消息字符串的末尾字符為第一預(yù)設(shè)字符時(shí),將所述彈幕消息字符串定義為構(gòu)造字符串。

      可選的,在上述彈幕消息解析方法中,在判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件的步驟之前,所述方法還包括:

      在檢測(cè)到彈幕消息時(shí),對(duì)所述彈幕消息進(jìn)行初始化得到彈幕消息字符串;

      對(duì)所述彈幕消息字符串進(jìn)行復(fù)制并保存。

      可選的,在上述彈幕消息解析方法中,在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典的步驟包括:

      根據(jù)預(yù)設(shè)循環(huán)函數(shù)對(duì)所述構(gòu)造字符串進(jìn)行循環(huán)索引,所述循環(huán)函數(shù)進(jìn)行循環(huán)索引的次數(shù)與所述構(gòu)造字符串的長(zhǎng)度相對(duì)應(yīng);

      當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第一預(yù)設(shè)字符時(shí),創(chuàng)建一個(gè)字典,將所述第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,并在所述臨時(shí)字符串之前拼接第二預(yù)設(shè)字符。

      可選的,在上述彈幕消息解析方法中,所述方法還包括:

      當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第二預(yù)設(shè)字符,且所述第二預(yù)設(shè)字符相鄰的下一字符為第三預(yù)設(shè)字符時(shí),在該第三預(yù)設(shè)字符后面拼接第二預(yù)設(shè)字符,并創(chuàng)建一個(gè)字典,將該第二預(yù)設(shè)字符對(duì)應(yīng)的字符串存儲(chǔ)于該字典,并將該字典存儲(chǔ)于所述預(yù)設(shè)數(shù)組;

      當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第二預(yù)設(shè)字符,且所述第二預(yù)設(shè)字符相鄰的下一字符為第四預(yù)設(shè)字符時(shí),在該第四預(yù)設(shè)字符后面拼接第一預(yù)設(shè)字符,并創(chuàng)建一個(gè)字典,將該第一預(yù)設(shè)字符對(duì)應(yīng)的字符串存儲(chǔ)于該字典,并將該字典存儲(chǔ)于所述預(yù)設(shè)數(shù)組;

      當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第二預(yù)設(shè)字符,且所述第二預(yù)設(shè)字符相鄰的下一字符為第五預(yù)設(shè)字符時(shí),清空所述臨時(shí)字符串。

      本發(fā)明還提供一種彈幕消息解析裝置,所述裝置包括:

      判斷模塊:用于判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件;

      處理模塊:用于在所述彈幕消息字符串滿足長(zhǎng)度預(yù)設(shè)條件時(shí),根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串;

      解析模塊:用于在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。

      可選的,在上述彈幕消息解析裝置中,所述處理模塊包括:

      判斷子模塊:用于判斷所述彈幕消息字符串的末尾字符是否為第一預(yù)設(shè)字符;

      構(gòu)造子模塊:用于在所述彈幕消息字符串的末尾字符不為第一預(yù)設(shè)字符時(shí),根據(jù)預(yù)設(shè)拼接函數(shù)向所述彈幕消息字符串的末尾字符后面拼接所述第一預(yù)設(shè)字符得到構(gòu)造字符串;

      定義子模塊:用于在所述彈幕消息字符串的末尾字符為第一預(yù)設(shè)字符時(shí),將所述彈幕消息字符串定義為構(gòu)造字符串。

      可選的,在上述彈幕消息解析裝置中,所述解析模塊包括:

      索引子模塊:用于根據(jù)預(yù)設(shè)循環(huán)函數(shù)對(duì)所述構(gòu)造字符串進(jìn)行循環(huán)索引,所述循環(huán)函數(shù)進(jìn)行循環(huán)索引的次數(shù)與所述構(gòu)造字符串的長(zhǎng)度相對(duì)應(yīng);

      解析子模塊:用于當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第一預(yù)設(shè)字符時(shí),創(chuàng)建一個(gè)字典,將所述第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,并在所述臨時(shí)字符串之前拼接第二預(yù)設(shè)字符。

      本發(fā)明還提供一種電子設(shè)備,包括處理器和存儲(chǔ)器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)以下步驟:

      判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件;

      在所述彈幕消息字符串滿足長(zhǎng)度預(yù)設(shè)條件時(shí),根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串;

      在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。

      本發(fā)明還提供一種計(jì)算機(jī)可讀儲(chǔ)存介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述彈幕消息解析方法的步驟。

      本發(fā)明提供的一種彈幕消息解析方法、裝置及電子設(shè)備,根據(jù)滿足長(zhǎng)度預(yù)設(shè)條件的彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串,并在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。通過(guò)上述設(shè)置能夠有效避免對(duì)彈幕消息字符串進(jìn)行冗余判斷和處理,進(jìn)而有效避免彈幕消息顯示時(shí)實(shí)時(shí)性差的問(wèn)題。

      附圖說(shuō)明

      為了更清楚地說(shuō)明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,應(yīng)當(dāng)理解,以下附圖僅示出了本發(fā)明的某些實(shí)施例,因此不應(yīng)被看作是對(duì)范圍的限定,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他相關(guān)的附圖。

      圖1為本發(fā)明實(shí)施例提供的一種電子設(shè)備的方框示意圖。

      圖2為本發(fā)明實(shí)施例提供的一種彈幕消息解析方法的流程示意圖。

      圖3為圖2中步驟s130的子步驟示意圖。

      圖4為圖2中步驟s150的子步驟示意圖。

      圖5為本發(fā)明實(shí)施例提供的一種彈幕消息解析裝置的模塊框圖。

      圖6為本發(fā)明實(shí)施例提供的一種處理模塊的模塊框圖。

      圖7為本發(fā)明實(shí)施例提供的一種解析模塊的模塊框圖。

      圖標(biāo):10-電子設(shè)備;100-彈幕消息解析裝置;110-判斷模塊;130-處理模塊;131-判斷子模塊;133-構(gòu)造子模塊;135-定義子模塊;150-解析模塊;151-索引子模塊;153-解析子模塊;200-存儲(chǔ)器;300-處理器。

      具體實(shí)施方式

      為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。通常在此處附圖中描述和示出的本發(fā)明實(shí)施例的組件可以以各種不同的配置來(lái)布置和設(shè)計(jì)。

      因此,以下對(duì)在附圖中提供的本發(fā)明的實(shí)施例的詳細(xì)描述并非旨在限制要求保護(hù)的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

      應(yīng)注意到:相似的標(biāo)號(hào)和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個(gè)附圖中被定義,則在隨后的附圖中不需要對(duì)其進(jìn)行進(jìn)一步定義和解釋。

      在本發(fā)明的描述中,需要說(shuō)明的是,術(shù)語(yǔ)“第一”、“第二”、“第三”、“第四”和“第五”等僅用于區(qū)分描述,而不能理解為指示或暗示相對(duì)重要性。

      如圖1所示,是本發(fā)明較佳實(shí)施例提供的一種電子設(shè)備10的方框示意圖。本發(fā)明實(shí)施例中的電子設(shè)備10可以是,但不限于,服務(wù)器、個(gè)人電腦(personalcomputer,pc)、平板電腦、個(gè)人數(shù)字助理(personaldigitalassistant,pda)、移動(dòng)上網(wǎng)設(shè)備(mobileinternetdevice,mid)、智能手機(jī)等。本發(fā)明實(shí)施例中提供的方法及裝置用于在電子設(shè)備10上實(shí)現(xiàn)彈幕消息解析。

      其中,所述電子設(shè)備10包括彈幕消息解析裝置100、存儲(chǔ)器200和處理器300。

      所述存儲(chǔ)器200、處理器300以及各元件之間直接或間接地電性連接,以實(shí)現(xiàn)數(shù)據(jù)傳輸或交互。例如,這些元件相互之間可通過(guò)一條或多條通訊總線或信號(hào)線實(shí)現(xiàn)電性連接。所述處理器300用于執(zhí)行所述存儲(chǔ)器200中存儲(chǔ)的可執(zhí)行模塊,例如所述彈幕消息解析裝置100中所包括的軟件功能模塊及計(jì)算機(jī)程序。

      其中,所述存儲(chǔ)器200可以是,但不限于,隨機(jī)存取存儲(chǔ)器(randomaccessmemory,ram),只讀存儲(chǔ)器(readonlymemory,rom),可編程只讀存儲(chǔ)器(programmableread-onlymemory,prom),可擦除只讀存儲(chǔ)器(erasableprogrammableread-onlymemory,eprom),電可擦除只讀存儲(chǔ)器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存儲(chǔ)器200用于存儲(chǔ)程序,所述處理器300在接收到執(zhí)行指令后,執(zhí)行所述程序,例如本發(fā)明中的彈幕消息解析方法。

      所述處理器300可以是一種集成電路芯片,具有信號(hào)處理能力。所述處理器300可以是通用處理器,包括中央處理器(centralprocessingunit,cpu)、網(wǎng)絡(luò)處理器(networkprocessor,np)等;還可以是數(shù)字信號(hào)處理器(dsp)、專用集成電路(asic)、現(xiàn)場(chǎng)可編程門(mén)陣列(fpga)或者其他可編程邏輯器件、分立門(mén)或者晶體管邏輯器件、分立硬件組件。可以實(shí)現(xiàn)或者執(zhí)行本發(fā)明實(shí)施例中的公開(kāi)的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。

      應(yīng)當(dāng)理解,圖1所示的結(jié)構(gòu)僅為示意,所述電子設(shè)備10可以包括比圖1所示更多或者更少的組件,或者具有與圖1所示不同的配置。圖1中所示的各組件可以采用硬件、軟件或其組合實(shí)現(xiàn)。

      如圖2所示,是本發(fā)明較佳實(shí)施例提供的一種彈幕消息解析方法。所述彈幕消息解析方法應(yīng)用于圖1所示的電子設(shè)備10。下面將對(duì)圖2所示的方法步驟和具體流程進(jìn)行詳細(xì)闡述。

      所述方法包括步驟s110、s130和s150三個(gè)步驟。

      步驟s110:判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件。

      所述長(zhǎng)度預(yù)設(shè)條件可以是所述彈幕消息字符串的長(zhǎng)度大于零,也可以是所述彈幕消息字符串的長(zhǎng)度大于一個(gè)定值。為避免解析的消息字符串為空,進(jìn)而造成崩潰的情況??蛇x的,在本實(shí)施例中,所述判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件為:判斷所述彈幕消息字符串的長(zhǎng)度是否大于零。

      步驟s130:在所述彈幕消息字符串滿足長(zhǎng)度預(yù)設(shè)條件時(shí),根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串。

      通過(guò)上述設(shè)置使得構(gòu)造字符串的格式相同,以便于進(jìn)行解析。其中所述第一預(yù)設(shè)字符可以是但不限于符號(hào)、字母或數(shù)字,只要能使所述構(gòu)造字符串的格式相同,并根據(jù)實(shí)際需求進(jìn)行設(shè)置即可。例如,在本實(shí)施例中,所述第一預(yù)設(shè)字符為“/”。

      請(qǐng)結(jié)合圖3,根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串的步驟可以包括:s131、s133和s135三個(gè)子步驟。

      子步驟s131:判斷所述彈幕消息字符串的末尾字符是否為第一預(yù)設(shè)字符。

      在所述彈幕消息字符串的末尾字符不為第一預(yù)設(shè)字符時(shí),執(zhí)行子步驟s133,在所述彈幕消息字符串的末尾字符為第一預(yù)設(shè)字符時(shí),執(zhí)行子步驟s135。

      子步驟s133:根據(jù)預(yù)設(shè)拼接函數(shù)向所述彈幕消息字符串的末尾字符后面拼接所述第一預(yù)設(shè)字符得到構(gòu)造字符串。

      子步驟s135:將所述彈幕消息字符串定義為構(gòu)造字符串。

      通過(guò)上述步驟,使得所述彈幕消息字符串是以第一預(yù)設(shè)字符為結(jié)尾,從而使所述彈幕消息字符串的格式統(tǒng)一,以便于進(jìn)行解析處理。

      步驟s150:在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。

      在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符的方式可以是按照順序循環(huán)查找所述第一預(yù)設(shè)字符,也可以是隨機(jī)查找所述第一預(yù)設(shè)字符,只要能查找到所述構(gòu)造字符串中的所有第一預(yù)設(shè)字符即可,在此不做具體限定。

      針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典時(shí),所述字典中包括用于存放臨時(shí)字符串的字符串存儲(chǔ)空間和用于存放臨時(shí)字符串對(duì)應(yīng)信息的關(guān)鍵值存儲(chǔ)空間。

      所述臨時(shí)字符串可以是所述構(gòu)造字符串中的第一個(gè)字符到第一個(gè)第一預(yù)設(shè)字符的字符串,和/或第一預(yù)設(shè)字符之后的字符到與該第一預(yù)設(shè)字符相鄰的下一個(gè)第一預(yù)設(shè)字符構(gòu)成的字符串。所述臨時(shí)字符串也可以是由第一預(yù)設(shè)字符和到與該第一預(yù)設(shè)字符相鄰的下一第一預(yù)設(shè)字符之間的字符串構(gòu)成的。每個(gè)臨時(shí)字符串對(duì)應(yīng)一個(gè)字典,每個(gè)臨時(shí)字符串的結(jié)尾都是第一字符且不同字典中關(guān)鍵值存儲(chǔ)空間中存儲(chǔ)的臨時(shí)字符串對(duì)應(yīng)信息不同。

      所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組中,在本實(shí)施例中,所述構(gòu)造字符串中包括至少一個(gè)第一預(yù)設(shè)字符,則該構(gòu)造字符對(duì)應(yīng)至少一個(gè)字典。不同字典存放于所述預(yù)設(shè)數(shù)組中的位置不同。通過(guò)上述設(shè)置實(shí)現(xiàn)了對(duì)彈幕消息字符串進(jìn)行解析。

      請(qǐng)結(jié)合圖3,在本實(shí)施例中所述步驟s150包括s151和s153兩個(gè)子步驟。

      子步驟s151:根據(jù)預(yù)設(shè)循環(huán)函數(shù)對(duì)所述構(gòu)造字符串進(jìn)行循環(huán)索引,所述循環(huán)函數(shù)進(jìn)行循環(huán)索引的次數(shù)與所述構(gòu)造字符串的長(zhǎng)度相對(duì)應(yīng)。

      子步驟s153:當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第一預(yù)設(shè)字符時(shí),創(chuàng)建一個(gè)字典,將所述第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,并在所述臨時(shí)字符串之前拼接第二預(yù)設(shè)字符。

      所述第二預(yù)設(shè)字符可以是但不限于字母、數(shù)字或符號(hào),根據(jù)實(shí)際需求進(jìn)行設(shè)置即可。所述第二預(yù)設(shè)字符與所述第一預(yù)設(shè)字符可以是相同的,也可以是不同的。例如,在本實(shí)施例中,所述第二預(yù)設(shè)字符為“@”。通過(guò)在所述臨時(shí)字符串之前拼接第二預(yù)設(shè)字符,使得各所述臨時(shí)字符串的第一個(gè)字符相同,進(jìn)而使各臨時(shí)字符串的格式相同,以方便提取解析后的彈幕消息字符串。

      可選的,所述步驟s150還包括:當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第二預(yù)設(shè)字符,且所述第二預(yù)設(shè)字符相鄰的下一字符為第三預(yù)設(shè)字符時(shí),在該第三預(yù)設(shè)字符后面拼接第二預(yù)設(shè)字符,并創(chuàng)建一個(gè)字典,將該第二預(yù)設(shè)字符對(duì)應(yīng)的字符串存儲(chǔ)于該字典,并將該字典存儲(chǔ)于所述預(yù)設(shè)數(shù)組。

      所述第三預(yù)設(shè)字符可以是但不限于字母、數(shù)字或符號(hào),根據(jù)實(shí)際需求進(jìn)行設(shè)置即可。所述第三預(yù)設(shè)字符與所述第一預(yù)設(shè)字符和第二預(yù)設(shè)字符都不同。例如,在本實(shí)施例中,所述第三預(yù)設(shè)字符為“a”。

      當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第二預(yù)設(shè)字符,且所述第二預(yù)設(shè)字符相鄰的下一字符為第四預(yù)設(shè)字符時(shí),在該第四預(yù)設(shè)字符后面拼接第一預(yù)設(shè)字符,并創(chuàng)建一個(gè)字典,將該第一預(yù)設(shè)字符對(duì)應(yīng)的字符串存儲(chǔ)于該字典,并將該字典存儲(chǔ)于所述預(yù)設(shè)數(shù)組。

      所述第四預(yù)設(shè)字符可以是但不限于字母、數(shù)字或符號(hào),根據(jù)實(shí)際需求進(jìn)行設(shè)置即可。所述第四預(yù)設(shè)字符與所述第一預(yù)設(shè)字符、第二預(yù)設(shè)字符和三預(yù)設(shè)字符不同。例如,在本實(shí)施例中,所述第四預(yù)設(shè)字符為“s”。

      當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第二預(yù)設(shè)字符,且所述第二預(yù)設(shè)字符相鄰的下一字符為第五預(yù)設(shè)字符時(shí),清空所述臨時(shí)字符串。

      所述第五預(yù)設(shè)字符可以是但不限于字母、數(shù)字或符號(hào),根據(jù)實(shí)際需求進(jìn)行設(shè)置即可。例如,在本實(shí)施例中,所述第五預(yù)設(shè)字符為“=”。

      通過(guò)上述設(shè)置使得所述彈幕消息字符串解析成為多個(gè)的字典,并存儲(chǔ)于數(shù)組中,方便后續(xù)的調(diào)用和判斷,進(jìn)而有效避免在對(duì)彈幕消息進(jìn)處理時(shí)存在多余的判斷和處理,進(jìn)而有效避免彈幕消息顯示實(shí)時(shí)性差的問(wèn)題。

      可選的,在判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件的步驟之前,所述彈幕消息解析方法還包括:在檢測(cè)到彈幕消息時(shí),對(duì)所述彈幕消息進(jìn)行初始化得到彈幕消息字符串,以及對(duì)所述彈幕消息字符串進(jìn)行復(fù)制并保存。

      請(qǐng)結(jié)合圖5,本發(fā)明實(shí)施例提供一種彈幕消息解析裝置100,所述彈幕消息解析裝置100包括:判斷模塊110、處理模塊130和解析模塊150。

      所述判斷模塊110用于判斷彈幕消息字符串是否滿足長(zhǎng)度預(yù)設(shè)條件。在本實(shí)施例中,關(guān)于所述判斷模塊110的描述具體可參考對(duì)圖2中所示的步驟s110的詳細(xì)描述。也即,所述步驟s110可以由所述判斷模塊110執(zhí)行。

      所述處理模塊130用于在所述彈幕消息字符串滿足長(zhǎng)度預(yù)設(shè)條件時(shí),根據(jù)所述彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串。在本實(shí)施例中,關(guān)于所述處理模塊130的描述具體可參考對(duì)圖2中所示的步驟s130的詳細(xì)描述。也即,所述步驟s130可以由所述處理模塊130執(zhí)行。

      請(qǐng)結(jié)合圖6,可選的,在本實(shí)施的例中,所述處理模塊130包括:判斷子模塊131、構(gòu)造子模塊133和定義子模塊135。

      所述判斷子模塊131用于判斷所述彈幕消息字符串的末尾字符是否為第一預(yù)設(shè)字符。在本實(shí)施例中,關(guān)于所述判斷子模塊131的描述具體可參考對(duì)圖3中所示的子步驟s131的詳細(xì)描述。也即,所述子步驟s131可以由所述判斷子模塊131執(zhí)行。

      所述構(gòu)造子模塊133用于在所述彈幕消息字符串的末尾字符不為第一預(yù)設(shè)字符時(shí),根據(jù)預(yù)設(shè)拼接函數(shù)向所述彈幕消息字符串的末尾字符后面拼接所述第一預(yù)設(shè)字符得到構(gòu)造字符串。在本實(shí)施例中,關(guān)于所述構(gòu)造子模塊133的描述具體可參考對(duì)圖3中所示的子步驟s133的詳細(xì)描述。也即,所述子步驟s133可以由所述構(gòu)造子模塊133執(zhí)行。

      所述定義子模塊135用于在所述彈幕消息字符串的末尾字符為第一預(yù)設(shè)字符時(shí),將所述彈幕消息字符串定義為構(gòu)造字符串。在本實(shí)施例中,關(guān)于所述定義子模塊135的描述具體可參考對(duì)圖3中所示的子步驟s135的詳細(xì)描述。也即,所述子步驟s135可以由所述定義子模塊135執(zhí)行。

      所述解析模塊150用于在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,并將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。在本實(shí)施例中,關(guān)于所述解析模塊150的描述具體可參考對(duì)圖2中所示的步驟s150的詳細(xì)描述。也即,所述步驟s150可以由所述解析模塊150執(zhí)行。

      請(qǐng)結(jié)合圖7,可選的,在本實(shí)施的例中,所述解析模塊150包括:索引子模塊151和解析子模塊153。

      所述索引子模塊151用于根據(jù)預(yù)設(shè)循環(huán)函數(shù)對(duì)所述構(gòu)造字符串進(jìn)行循環(huán)索引,所述循環(huán)函數(shù)進(jìn)行循環(huán)索引的次數(shù)與所述構(gòu)造字符串的長(zhǎng)度相對(duì)應(yīng)。在本實(shí)施例中,關(guān)于所述索引子模塊151的描述具體可參考對(duì)圖4中所示的子步驟s151的詳細(xì)描述。也即,所述子步驟s151可以由所述索引子模塊151執(zhí)行。

      所述解析子模塊153用于當(dāng)循環(huán)索引的次數(shù)對(duì)應(yīng)的字符串長(zhǎng)度處的字符為第一預(yù)設(shè)字符時(shí),創(chuàng)建一個(gè)字典,將所述第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,并在所述臨時(shí)字符串之前拼接第二預(yù)設(shè)字符。在本實(shí)施例中,關(guān)于所述解析子模塊153的描述具體可參考對(duì)圖4中所示的子步驟s153的詳細(xì)描述。也即,所述子步驟s153可以由所述解析子模塊153執(zhí)行。

      綜上所述,本發(fā)明提供的一種彈幕消息解析方法、裝置及電子設(shè)備,根據(jù)滿足長(zhǎng)度預(yù)設(shè)條件的彈幕消息字符串得到包括至少一個(gè)第一預(yù)設(shè)字符的構(gòu)造字符串,并在所述構(gòu)造字符串中查找所述第一預(yù)設(shè)字符,針對(duì)查找到的每個(gè)所述第一預(yù)設(shè)字符分別創(chuàng)建一個(gè)字典,將該第一預(yù)設(shè)字符對(duì)應(yīng)的臨時(shí)字符串存儲(chǔ)于所述字典,所述字典存儲(chǔ)于一預(yù)設(shè)數(shù)組。通過(guò)上述設(shè)置能夠有效避免對(duì)彈幕消息字符串進(jìn)行冗余判斷和處理,進(jìn)而有效避免彈幕消息顯示時(shí)實(shí)時(shí)性差的問(wèn)題。通過(guò)設(shè)置第二預(yù)設(shè)字符、第三預(yù)設(shè)字符、第四預(yù)設(shè)字符和第五預(yù)設(shè)字符,可以進(jìn)一步避免對(duì)彈幕消息字符串進(jìn)行冗余判斷和處理,進(jìn)而有效避免彈幕消息顯示實(shí)時(shí)性差的問(wèn)題。

      在本發(fā)明實(shí)施例所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)和方法,也可以通過(guò)其它的方式實(shí)現(xiàn)。以上所描述的系統(tǒng)和方法實(shí)施例僅僅是示意性的,例如,附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)方式中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動(dòng)作的專用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。

      另外,在本發(fā)明各個(gè)實(shí)施例中的各功能模塊可以集成在一起形成一個(gè)獨(dú)立的部分,也可以是各個(gè)模塊單獨(dú)存在,也可以兩個(gè)或兩個(gè)以上模塊集成形成一個(gè)獨(dú)立的部分。

      所述功能如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),電子設(shè)備,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:u盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(rom,read-onlymemory)、隨機(jī)存取存儲(chǔ)器(ram,randomaccessmemory)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。需要說(shuō)明的是,在本文中,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。

      以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。

      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1