亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

iOS如何獲取漢字(簡體中文)筆畫數詳解

2020-07-26 02:21:25
字體:
來源:轉載
供稿:網友

思路

1、漢字字典庫匹配筆畫數

優點: 實現邏輯簡單,字典庫好擴展

缺點: 內存消耗較大(不過也能承擔)

思路: 這種實現思路是比較簡單的,具體思路是將簡體漢字所有字都窮舉出來,然后分別匹配上指定的筆畫數,當做一個大的數據庫,每次都去查詢一下。

2、漢字GBK編碼匹配筆畫數

優點:相比字典庫匹配,效率高,速度快

缺點:添加編碼庫不好添加,不好擴展

思路: 這種實現方案是需要獲取GBK編碼分別對應的筆畫數,放到指定數組(數據庫)中,每次通過輸入的漢字 轉碼為二進制,通過二進制的值 匹配數據庫中的筆畫數。

-**************************廢話少說,盤它!-**************************

上代碼,盤它!

先來看下成果

** 測試代碼 **

dispatch_async(dispatch_get_global_queue(0, 0), ^{ // 處理耗時操作的代碼塊... NSString *testString = @"濃睡不消殘酒"; // 字典查詢匹配 [self testStrokeCount:testString]; // 編碼查詢匹配 [self chineseCharactersCount:testString]; });

** 測試結果 **

------- 字典查詢匹配TemplateApp[78833:3000133] 漢字:濃 ------ 筆畫數:9TemplateApp[78833:3000133] 漢字:睡 ------ 筆畫數:13TemplateApp[78833:3000133] 漢字:不 ------ 筆畫數:4TemplateApp[78833:3000133] 漢字:消 ------ 筆畫數:10TemplateApp[78833:3000133] 漢字:殘 ------ 筆畫數:9TemplateApp[78833:3000133] 漢字:酒 ------ 筆畫數:10------ 編碼查詢匹配TemplateApp[78833:3000133] 漢字:濃 ------ 筆畫數:9TemplateApp[78833:3000133] 漢字:睡 ------ 筆畫數:13TemplateApp[78833:3000133] 漢字:不 ------ 筆畫數:4TemplateApp[78833:3000133] 漢字:消 ------ 筆畫數:10TemplateApp[78833:3000133] 漢字:殘 ------ 筆畫數:9TemplateApp[78833:3000133] 漢字:酒 ------ 筆畫數:10

漢字字典庫匹配筆畫數 核心代碼

-(NSDictionary *)chineseCharacters{ if (!_chineseCharacters) { _chineseCharacters = [[NSDictionary alloc] init]; _chineseCharacters = [self readLocalJsonFileWithName:@"Chinese" type:@"json"]; } return _chineseCharacters;}- (NSArray *)bytesArray{ if (!_bytesArray) { _bytesArray = [[NSArray alloc] init]; _bytesArray = [self readLocalJsonFileWithName:@"byteNum" type:@"json"]; } return _bytesArray;}#pragma mark - **************** Tool function/** 讀取本地文件 */-(nullable id)readLocalJsonFileWithName:(NSString *)fileName type:(NSString *)type{ // 獲取文件路徑 NSString *path = [[NSBundle mainBundle] pathForResource:fileName ofType:type]; // 將文件數據化 NSData *data = [[NSData alloc] initWithContentsOfFile:path]; // 對數據進行JSON格式化并返回字典形式 return [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];}+(BOOL)isAllCCString:(NSString *)tempStr{ for (int i=0; i<tempStr.length; i++) { NSString *indexstr = [tempStr substringWithRange:NSMakeRange(i, 1)]; NSInteger strlength = [KLChineseCharactersTool getCharactCountOfString:indexstr]; if (strlength != 2) {  return NO; }  } return YES;}-(BOOL)isBlankString:(NSString *)string{  if (string ==nil || string ==NULL) { return YES; } if ([string isKindOfClass:[NSNull class]]) { return YES; } if ([[string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]length]==0) {//特殊字符判斷 return YES; } return NO;}-(NSInteger)getSigleChineseStrokeCountWith:(NSString *)str{ NSInteger count = 0;  BOOL isALLCC = [[self class] isAllCCString:str]; if (!isALLCC) { // 如果不是純漢字返回筆畫數為0 return 0; }  // 單字符判斷 if (str.length<=0) { NSLog(@"字符串不合法"); return 0; }  // 多字符 取第一個字符判斷 NSString *sigleStr = @""; if (str.length > 1) { NSLog(@"并非單個字符"); sigleStr = [str substringWithRange:NSMakeRange(0, 1)]; }  if (str.length == 1) { sigleStr = str; }   // 獲取筆劃列表 NSDictionary *chineseDic = self.chineseCharacters;  // 查詢 for (int i=0; i<25; i++) { // 按次序獲取某個筆劃數的所有漢字組成的字符 NSString *itemString = [chineseDic objectForKey:[NSString stringWithFormat:@"%d",(i+1)]]; //如果 傳入漢字不為空 異常判斷 if (![self isBlankString:itemString] && itemString.length > 0 ) {  // 包含這個漢字 將筆畫數 i+1 返回  if ([itemString rangeOfString:sigleStr].location != NSNotFound) {  NSLog(@"漢字:%@ ------ 筆畫數:%d",sigleStr,i+1);  count = count + (i+1);  break;  } }  }  if (count == 0) { NSLog(@"字庫中暫時沒有該漢字"); }  return count;}-(NSInteger)getChineseStrokeCountWith:(NSString *)chineseString{ NSInteger count = 0;  // 單個漢字? if (chineseString.length == 1 ) { return [self getSigleChineseStrokeCountWith:chineseString]; }  // 多漢字 // 獲取筆劃列表  for (int i=0; i<chineseString.length; i++) { // 將傳入字符分割成單個字 NSString *indexStr = [chineseString substringWithRange:NSMakeRange(i, 1)]; NSInteger sigleCount = [self getSigleChineseStrokeCountWith:indexStr]; count = count + sigleCount; }  NSLog(@"%@ --- 共計:%ld劃",chineseString ,(long)count);  return count;}

GBK編碼查詢法 核心代碼

#pragma mark - **************** BGBK漢字編碼 匹配+(int)getCharactCountOfString:(NSString *)strtemp{  int strlength = 0; char* p = (char*)[strtemp cStringUsingEncoding:NSUnicodeStringEncoding]; for (int i=0 ; i<[strtemp lengthOfBytesUsingEncoding:NSUnicodeStringEncoding] ;i++) { if (*p) {  p++;  strlength++; } else {  p++; }  } return strlength;}-(NSInteger)getStrokeCountWithHighByte:(int)highByte lowByte:(int)lowByte{ NSInteger strokeCount = 0; //high: 176 - 247 low: 161 - 154 該范圍才是漢子區域 if (highByte < 0xB0 || highByte > 0xF7 || lowByte < 0xA1 || lowByte > 0xFE) { // 非GB2312合法字符 return 0; }else{ int offset = (highByte - 0xB0) * (0xFE - 0xA0) + (lowByte - 0xA1); NSArray *byteArr = self.bytesArray; strokeCount = ((NSNumber *)[byteArr objectAtIndex:offset]).intValue; return strokeCount; } return strokeCount;}-(NSInteger)getBytesChineseStrokeCountWith:(NSString *)ccString{ NSInteger count = 0;  // 單個漢字? if (ccString.length == 1 ) { return [self getBytesSigleChineseStrokeCountWith:ccString]; }  for (int i=0; i<ccString.length; i++) {  NSString *indexstr = [ccString substringWithRange:NSMakeRange(i, 1)];  NSInteger strlength = [KLChineseCharactersTool getCharactCountOfString:indexstr];  if (strlength!=2) {  NSLog(@"kael -- 字符 不合法 %@",indexstr);  break; }  if (strlength == 2) {  count = count + [self getBytesSigleChineseStrokeCountWith:indexstr]; }   }  return count;}-(NSInteger)getBytesSigleChineseStrokeCountWith:(NSString *)ccString{ NSInteger count = 0; // 1、先判斷是否是漢字 BOOL isALLCC = [[self class] isAllCCString:ccString]; if (!isALLCC) { // 如果不是純漢字返回筆畫數為0 return 0; }  // 2、判斷字符個數 // 不合法 if (ccString.length<=0) { NSLog(@"字符串不合法"); return 0; }  // 多字符 取第一個字符判斷 NSString *sigleStr = @""; if (ccString.length > 1) { NSLog(@"并非單個字符"); sigleStr = [ccString substringWithRange:NSMakeRange(0, 1)]; }  // 單字符判斷 if (ccString.length == 1) { sigleStr = ccString; }   NSInteger strlength = [KLChineseCharactersTool getCharactCountOfString:sigleStr];  if (strlength!=2) { NSLog(@"kael -- 字符 不合法 %@",ccString); return 0; }else{ // BGK 編碼 --> 轉為 NSData NSStringEncoding enc =CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000); NSData *indexData = [ccString dataUsingEncoding:enc]; // NSData --> Bytes Byte *indexByte = (Byte *)[indexData bytes]; // 取高8位 低8位 int highByte = indexByte[0]; int lowByte = indexByte[1];  count = [self getStrokeCountWithHighByte:highByte lowByte:lowByte]; NSLog(@"漢字:%@ ------ 筆畫數:%ld",sigleStr,count);  }  return count;}

核心數據 及 【文件】

漢字字典庫匹配字典

{"1":"一乙", "2":"丁七乃乜九了二人亻兒入八冂幾凵刀刁力勹匕十廠厶又", "3":"萬丈三上下丌個丫丸久乇么義乞也習鄉亍于虧亡億兀凡刃勺千衛叉口囗土士夕大女子孑孓寸小尢尸山巛川工己已巳巾干幺廣廾弋弓才門飛馬", "4":"不與丐丑專中豐丹為之烏書予云互亓五井亢什仁仂仃仄僅仆仇仉今介仍從侖倉允元公六兮內岡冗鳳兇分切刈勸辦勾勿勻化匹區卅升午卞厄廳歷及友雙反壬天太夫夭孔少尤尹尺屯巴幣幻廿開引心憶戈戶手扎支攴攵文斗斤方無日曰月木欠止歹殳毋比毛氏氣水火爪父爻爿片牙牛犬王瓦肀藝見計訂訃認譏貝車鄧長閂隊韋風且丕世丘丙業叢東絲主乍乎乏", "5":"樂仔仕他仗付仙仝仞仟仡代令以仨儀仫們兄蘭冉冊寫冬馮凸凹出擊刊芻功加務勱包匆北匝卉半卟占卡盧卮卯厲去發古句另叨叩只叫召叭??膳_叱史右叵葉號司嘆叻叼嘰囚四圣處外央夯失頭奴奶孕寧它宄對爾尕尻尼左巧巨市布帥平幼庀弁弗弘歸必忉戊戔撲扒打扔斥旦舊未末本札術正母氐民氕永汀汁匯漢滅犯犰玄玉瓜甘生用甩田由甲申電疋白皮皿目矛矢石示禮禾穴立糾艽艾艿節訐訌討讓訕訖訓議訊記軋邊遼邗邙邛鄺钅閃阡阢饑馭鳥龍", "6":"丞丟乒乓喬乩買爭亙亞交亥亦產仰仲仳仵件價任份仿企伉伊伍伎伏伐休眾優伙會傴傘偉傳伢傷倀倫傖偽佇佤充兆先光全共關興再軍農冰冱沖決鳧凼刎刑劃刖列劉則剛創劣動匈匠匡華協印危壓厭厙吁吃各吆合吉吊同名后吏吐向吒嚇呂吖嗎囝回囟因囡團在圩圪圬圭圮圯地圳壙場圾壯夙多夷夸夾奪夼奸她好妁如妃妄妝婦媽字存孫宅宇守安寺尋導尖塵尥堯盡屹屺嶼歲豈岌州巡鞏帆師年并莊慶延廷異式弛當懺忖忙戌戍戎戲成托扛扣扦執擴捫掃揚收旨早旬旭旮旯曲曳有朱樸朵機朽殺雜權次歡此死畢氖氘氽汆汊汐汔汕汗汛汜汝江池污湯汲燈灰爺牝牟犴獷犸玎璣百祁竹米糸紆紅紂纖紇約級紈纊紀紉缶網羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色芄芊芋芍芎芏芑芒薌芝芨虍蟲血行衣西觀講諱謳詎訝訥許訛論訟諷設訪訣貞負軌達遷迂迄迅過邁邡邢那邦邪鄔釓釔閆閉問闖阪阮阱防陽陰陣階頁餳馱馴馳齊", "7":"兩嚴串麗亂亨畝伯估伲伴伶伸伺似伽佃但位低住佐佑體何佗佘余佚佛作佝佞佟你傭僉佧克免兌兕兵況冶冷凍初刪判刨利別剄助努劫劬劭勵勁勞匣醫卣鹵即卻卵縣君吝吞吟吠吡吣否吧噸吩含聽吭吮啟吱吲吳吵吸吹吻吼吾呀呃呆呈告呋吶嘸囈呔嘔嚦唄員咼嗆嗚囤囫園困囪圍圇圻址坂均坊坌坍坎壞坐坑塊堅壇壢壩塢墳墜聲殼奩奐妊妍妒妓妖妗妙妞妣妤妥妨嫵嫗媯姊姒孚孛孜孝宋完宏壽尬尾尿局屁層岈岍岐岑岔嶇崗峴岙嵐島岜希幃帳庇床庋序廬廡庫應棄弄弟張形彤彷役徹忌忍忐忑忒志忘忡忤憂忪快忭忮忱忸忻愾懷憮慪悵愴我戒扭扮扯擾扳扶批扼找技抄抉把抑抒抓投抖抗折撫拋摶摳掄搶護報拒擬攸改攻旰旱時曠更桿杈杉杌李杏材村杓杖杜杞束杠條來楊榪極歟步殲每氙氚求汞汨汩汪汰汴汶洶汽汾沁沂沃沅沆沈沉沌沏沐沔沙沛溝沒灃漚瀝淪滄溈滬泐泛靈灶灸灼災燦煬牡牢狀猶狁狂狃狄狽玖瑪甫甬男甸町疔癤療皂盯矣磯社祀秀私禿究窮系緯紜純紕紗綱納縱綸紛紙紋紡紐紓罕羌肓肖肘肚肛肜肝肟腸良羋芘芙蕪芟芡芤芥蘆芩芪芫芬芭芮芯芰花芳芴芷蕓芹芽芾蓯芐葦藶苊莧萇蒼苧蘇苡苣虬補角言證詁訶評詛識詐訴診詆謅詞詘詔譯詒谷豆豕豸貢財赤走足身軒軔辛辰迎運近迓返迕還這進遠違連遲邑郵邯邰邱邳邴邵邶邸鄒鄴鄰酉里針釘釗釙釕閏闈閑閎間閔閌悶阻阼阽阿陀陂附際陸隴陳陘韌飩餼飪飫飭飯飲驅駁驢鳩雞麥龜", "8":"喪乖乳事些亟享京佩佬佯佰佳佴佶佻佼佾使侃侄侈侉例侍侏侑侔侗供依俠侶僥偵側僑儈儕儂兔兗其具典冼冽凈憑凱函刮到刳制刷券剎刺刻劊劌剴剁劑劾勢匭卑卒卓單賣卦臥卷巹廁叁參叔取呢呤呦周呱味呵呶呷呸呻呼命咀咂咄咆咋和咎詠咐咒咔咕咖嚨咚嚀咝哎囹固國圖坡坤坦坨坩坪坫坭坯坳坶坷坻坼垂垃壟垅壚備夜奄奇奈奉奮奔妮妯妲妹妻妾姆始姐姑姓委姍孟孢季孤孥學宓宕宗官宙定宛宜寶實寵審尚居屈屜屆岢岣巖岫岬嶺岱岳岵岷岸崠巋峁嶧巫帑帔帕帖簾帙帚帛幟幸底庖店廟庚府龐廢建彌弦弧弩弳錄彼往征徂徑忝忠念忽忿態慫怊怍怏怔怕怖怙怛憐怡怦性怩怪怫怯怵懌戕或戧戽戾房所承抨披抬抱抵抹抻押抽抿拂拄擔拆拇拈拉拊拌拍拎拐拓拔拖拗拘拙拚招攏揀擁攔擰撥擇放斧斬於旺昀昂昃昆昊昌明昏易昔昕曇朊朋服杪杭杯杰杲杳杵杷杼松板構枇枉枋析枕林枘枚果枝樅樞棗櫪枧棖槍楓梟柜欣歐武歧歿毆氓氛沓沫沭沮沱沲河沸油治沼沽沾沿泄泅泊泌泓泔法泖泗濘泠泡波泣泥注淚泫泮泯泱泳瀧瀘濼瀉潑澤涇淺炅爐炊炎炒炔炕燉炙煒熗炬爬爸版牦牧物狍狎狐狒狗狙獰玟玢玩玫瑋環現甕甌甙畫甾畀暢疙疚疝瘧癘瘍的盂盱盲直知矸矽礬礦碭碼祆祈祉稈秉穸穹空竺糴線紺紲紱練組紳細織終縐絆紼絀紹繹經紿罔羅者耵耶肅股肢膚肥肩肪肫肭骯肯肱育肴肷肺肼肽腎腫脹脅臾舍艱苑苒苓苔苕苗苘苛苜苞茍苠苤若苦苫苯英苴苷蘋苻茁茂范茄茅茆茇茉茌莖蘢蔦塋煢茚虎虜蟣虱表衩衫襯規覓視誆誄試詿詩詰詼誠誅詵話誕詬詮詭詢詣諍該詳詫諢詡責賢敗賬貨質販貪貧貶購貯貫轉軛輪軟轟迢迤迥迦迨邇迪迫迭迮述逕邾郁郄郅郇郊郎郟鄶鄭鄆采金釷釬釧釤釩釣鍆釹釵閘鬧阜陋陌降限陔陜隸隹雨青非頂頃餞飾飽飼飴駔駛駟駙駒騶駐駝駑駕驛駘魚鳶鳴黽齒", "9":"臨舉亭亮親侮侯侵便促俄俅俊俎俏俐俑俗俘俚俜保俞俟信俁儔儼倆儷儉修茲養冒冠剃削剌前剮劍勃勇勉勛匍南卸厘厚受變敘叛呲咣咤咦咧咨咩咪咫咬咭咯咱咳咴咸咻咽咿哀品哂哄哆哇哈哉哌響哏哐啞噠嘵嗶噦嘩噲哚嚌噥哞喲哪囿型垌壘垓垛垠垡垢垣垤墾坰堊墊埡垮塏垴城埏復奎奏契奕獎姘姚姜姝姣姥姨姹姻姿威娃婁婭嬈嬌孌娜孩孿客宣室宥宦憲宮封將尜嘗屋屎屏峋峒峙峽嶠崢巒差巷帝帶幀幫幽庠庥度庭弈弭彎彖彥彪待徇很徉徊律後怎怒思怠急怨總懟恂恃恍恒恢恤恨恪恫恬慟懨愷惻惱惲戰扁扃拜括拭拮拯拱拴拶拷拼拽拾持掛指按挎挑挖撾撻挾撓擋撟掙擠揮挪挺政故斫施既昝星映春昧昨昭是昱昴昵昶晝顯曷朐枯枰枳枵架枷枸柁柃柄柏某柑柒染柔柘柙柚柝柞檸柢查柩柬柯柰柱柳檉柿梔柵標棧櫛櫳棟櫨櫟欄樹歪殂殃殄殆殤殘段毒毖毗氈氟氡氫泉泵澩潔洄洇洋洌洎灑洗洙洚洛洞津洧洪洫洮洱洲洳洵洹活洼洽派浹澆湞濁測澮濟瀏渾滸濃潯涎炫炭炮炯炱炳炷炸點炻煉熾烀爍爛烴爰牮牯牲牽狠狡狨狩獨狹獅獪猙獄猻玲玳玷玻珀珂珈珉珊珍玨琺瓏瓴甚甭畈畋界畎畏疣疤疥疫疬瘡瘋癸皆皇皈盅盆盈相盹盼盾省眄眇眈眉看眍眨矜矧矩砂砉砌砍砑砒研磚硨砘硯砜砭祓祖祗祚祛祜祝神祠禰禹禺秋種科秒秕秭穿窀突竊窆豎竽竿篤笈類秈籽綁絨結绔繞絎繪給絢絳絡絕絞統缸罘罰美羿耍耐耔耷胂胃胄膽背胍胎胖胗胙胚胛勝胝胞胡胤胥朧胨胩臚脛脈舁舡舢艤茈茗茛茜繭茨茫茬茭茯茱茳茴茵茶茸茹茺茼荀荃荊荇草荏薦荑荒荔莢蕘蓽蕎薈薺蕩榮葷滎犖熒蕁藎蓀蔭荬葒荮藥莒莛虐虹虺虻虼雖蝦蠆蝕蟻螞蚤衍衲衽衿袂襖裊要覘覽覺訇誡誣語誚誤誥誘誨誑說誦誒貳賤賁貰貼貴貺貸貿費賀貽赳赴趙趴轱軻轤軸軹軼轷軫轢軺輕迷迸跡追退送適逃逄逅逆選遜郗郛郜郝郡郢酈鄖酊酋重鈣钚鈦鉅鈍鈔鐘鈉鋇鋼鈑鈐鑰欽鈞鎢鉤鈧鈁鈥鈄鈕鈀閨聞闥閩閭閥閣閡陛陟陡院除隉隕險面革韭音頇項順須颮颯食餌饒餉餃餅首香驍罵驕驊駱駭駢骨鬼鷗鴉鴇鴆", "10":"乘亳俯俱俳俸俺俾倌倍倏倒倔倘候倚倜借倡倥倦倨倩倪倬倭倮債值傾偌健黨兼冢冤冥凄準凇涼凋凌剔剖剜剞剡剝劇勐匪匿卿厝原叟哥哦哧哨哩哭哮哲哳哺哼哽哿唁唆唇唉唏唐唑唔嘜嘮嗩唣喚唧啊圃圄圓垸埂埃埋埒埔埕塒塤堝壺夏套奘奚姬娉娌娑娓娘娟娠娣娥娩娛媧嫻婀孬宰害宴宵家宸容寬賓射屐屑展屙峨峪峭峰峻嶗崍席幬座弱徐徒徠恁戀恐恕恙恚恝恣恧恩恭息懇惡悃悄悌悍悒悔悖悚悛悝悟悅慳憫扇拳拿挈摯攣挨挫振挹挽捂捃捅捆捉捋捌捍捎捏捐捕撈損撿換搗效敉敵敖齋料旁旃旄旅旆晁晃晉晌晏曬曉曄暈暉晚晟朔朕朗柴栓棲栗栝校栩株栲栳樣核根格栽欒桀桁桂桃桄桅框案桉桊桌桎桐?;附坭陾繕飿E檔榿橋樺檜槳樁梃梆梢梧梨殉殊殷斃毪氤氦氧氨氬泰流漿浙浚浜浞浠浣浦浩浪浮浯浴海浸浼涂涅消涉涌涑涓涔涕濤澇淶漣潿渦渙滌潤澗漲澀烈烊烘烙燭煙烤煩燒燁燴燙燼熱愛爹特犧狳狴狷貍狺狻狼猁獫璽珙珞珠珥珧珩班琿琊瓞瓶瓷畔留畚畛畜疰皰疲疳疴疸疹疼疽疾痂痃痄病癥癰痙皋皺益盍盎盞鹽監眙眚真眠眢眩砝亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

夜夜狂射影院欧美极品| 成人激情电影一区二区| 亚洲成人在线视频播放| 欧美在线观看一区二区三区| 日韩在线精品一区| 精品激情国产视频| 国产福利视频一区| 欧美电影免费播放| 亚洲a∨日韩av高清在线观看| 91精品国产沙发| 国产综合久久久久久| 色噜噜国产精品视频一区二区| 亚洲精品视频网上网址在线观看| 清纯唯美亚洲激情| 日韩免费不卡av| 最近免费中文字幕视频2019| 97超碰色婷婷| 九九视频直播综合网| 成人一区二区电影| 日韩国产一区三区| 亚洲丝袜在线视频| 最近中文字幕日韩精品| 亚洲bt欧美bt日本bt| 欧美日韩中文在线| 亚洲综合小说区| 亚洲午夜女主播在线直播| 91av在线播放视频| 国产精品色视频| 国产精品日韩欧美综合| 中文字幕视频一区二区在线有码| 8050国产精品久久久久久| 精品福利在线视频| 国产精品一区二区三区久久久| 日韩成人在线视频观看| 日韩在线观看免费高清完整版| 日韩亚洲精品电影| 55夜色66夜色国产精品视频| 136fldh精品导航福利| 国产91对白在线播放| 亚洲一区中文字幕在线观看| 亚洲aa中文字幕| 国产欧美亚洲视频| 亚洲成人免费在线视频| www.欧美精品| 欧美日韩视频免费播放| 亚州成人av在线| 国产人妖伪娘一区91| 国产精品黄色av| 久久久伊人日本| 国产精品aaa| 国产区亚洲区欧美区| 尤物精品国产第一福利三区| 欧美精品在线播放| 国产在线不卡精品| 国产精品色午夜在线观看| 亚洲最新视频在线| 欧美一级bbbbb性bbbb喷潮片| 欧美性资源免费| 国产69精品久久久久99| 81精品国产乱码久久久久久| 国产一区二区在线播放| 国色天香2019中文字幕在线观看| 色婷婷综合久久久久中文字幕1| 蜜臀久久99精品久久久久久宅男| 欧美成人h版在线观看| 国产精品美女在线| 亚洲一区二区三区视频播放| 亚洲成人精品久久久| 国产日韩av在线| 91在线无精精品一区二区| 亚洲欧美在线免费观看| 亚洲欧美日韩视频一区| 91成人精品网站| 91极品女神在线| 日韩电影免费在线观看中文字幕| 国模视频一区二区| 日韩激情在线视频| 国产香蕉一区二区三区在线视频| 久久精品国产免费观看| 亚洲性日韩精品一区二区| 亚洲精品永久免费精品| 国产精品扒开腿做爽爽爽的视频| 亚洲va国产va天堂va久久| 久久91亚洲人成电影网站| 亚洲天堂久久av| 国产999精品视频| 日本欧美精品在线| www.欧美免费| 91免费精品国偷自产在线| 欧美片一区二区三区| 欧美在线视频播放| 欧美国产精品人人做人人爱| 亚洲一区av在线播放| 日韩视频亚洲视频| 美女av一区二区三区| 亚洲精品97久久| 午夜精品一区二区三区在线视频| 91九色单男在线观看| 亚洲成人av片在线观看| 欧美极品在线播放| 欧美成人免费一级人片100| 久久久久久久久久久成人| 欧美精品国产精品日韩精品| 亚洲高清免费观看高清完整版| 精品国产1区2区| 精品久久久国产精品999| 国产人妖伪娘一区91| 国产主播喷水一区二区| 尤物九九久久国产精品的分类| 亚洲free性xxxx护士hd| 亚洲欧美国产日韩天堂区| 日韩在线www| 日韩av电影在线网| 日韩在线观看电影| 96sao精品视频在线观看| 狠狠色狠色综合曰曰| 国产丝袜高跟一区| 夜夜嗨av色一区二区不卡| 亚洲91精品在线观看| 8050国产精品久久久久久| 国产精品国语对白| 亚洲色图欧美制服丝袜另类第一页| 国产精品高清在线观看| 欧美专区在线播放| 成人在线精品视频| 伊是香蕉大人久久| 亚洲午夜精品久久久久久性色| 国产精品久久久久久久一区探花| 在线播放国产一区中文字幕剧情欧美| 国产偷国产偷亚洲清高网站| 成人黄色中文字幕| 国产亚洲精品久久久久久777| 亚洲精品一区久久久久久| 久久久亚洲国产天美传媒修理工| 国产精品久久久久99| 久久久久久久国产精品视频| 欧美精品videossex88| 亚洲午夜久久久影院| 日本午夜精品理论片a级appf发布| 国产精品www网站| 日本一区二区三区四区视频| 亚洲国产精品999| 97人人模人人爽人人喊中文字| 亚洲成人a级网| 久久在线免费视频| 中文字幕久久亚洲| 97国产精品人人爽人人做| 久热精品视频在线免费观看| 亚洲第一网站男人都懂| 亚洲丁香久久久| 欧美精品久久久久久久| 日韩中文字幕免费视频| 欧美性猛交xxxx免费看久久久| 日韩视频在线观看免费| 久久久999国产| 成人性生交大片免费观看嘿嘿视频| 97久久久免费福利网址| 欧美性生交大片免网| 欧美一级黑人aaaaaaa做受| 成人午夜在线影院| 欧美激情在线狂野欧美精品| 国产日韩中文字幕在线| 国产精品一区二区三区毛片淫片| 91av福利视频|