亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jclstrings.pas

?? Delphi編寫的一個(gè)支持語法高亮顯示和很多語言的文本編輯器
?? PAS
?? 第 1 頁 / 共 5 頁
字號(hào):
{**************************************************************************************************}{                                                                                                  }{ Project JEDI Code Library (JCL)                                                                  }{                                                                                                  }{ The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); }{ you may not use this file except in compliance with the License. You may obtain a copy of the    }{ License at http://www.mozilla.org/MPL/                                                           }{                                                                                                  }{ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF   }{ ANY KIND, either express or implied. See the License for the specific language governing rights  }{ and limitations under the License.                                                               }{                                                                                                  }{ The Original Code is JclStrings.pas.                                                             }{                                                                                                  }{ The Initial Developer of the Original Code is documented in the accompanying                     }{ help file JCL.chm. Portions created by these individuals are Copyright (C) of these individuals. }{                                                                                                  }{**************************************************************************************************}{                                                                                                  }{ Various character and string routines (searching, testing and transforming)                      }{                                                                                                  }{ Unit owner: Azret Botash                                                                         }{ Last modified: March 19, 2002                                                                    }{                                                                                                  }{**************************************************************************************************}// mvb 20 jan 2002 added StrIToStrings to interface section// mvb 20 jan 2002 added AllowEmptyString parameter to StringsToStr function// mvb 20 jan 2002 added AddStringToStrings() by Jeff// - StrIToStrings default parameter now true// - StrToStrings default parameter now true// - Rewrote StrSmartCase to fix a bug.// - Fixed a bug in StrIsAlphaNumUnderscore// - Fixed a bug in StrIsSubset// - Simplified StrLower// - Fixed a bug in StrRepeatLength// - Fixed a bug in StrLastPos// - Added function StrTrimCharsRight (Leonard Wennekers)// - Added function StrTrimCharsLeft (Leonard Wennekers)// - Added StrNormIndex function (Alexander Radchenko)// - Changed Assert in StrTokens/ to If List <> nil// - Deleted an commented out version of StrReplace. If anyone ever want to finish the old//   version please go the archive version 0.39// - Modified StrFillChar a little bit (added an if for count > 0)// - StrCharPosLower (Jean-Fabien Connault)// - StrCharPosUpper (Jean-Fabien Connault)// - Changed to 100 chars per line style// - Note to Marcel:  Have a look at StrToStrings and StrItoStrings. They are untested but//                    should work more or less equal to the BreakApart functions by JFC.// - Changed StrNPos for special case// - Changed StrIPos for special case// - Fixed a bug in CharPos : didn'T work if index = length(s)// - Fixed a bug in CharIPos : didn'T work if index = length(s)unit JclStrings;//{$I jcl.inc}interfaceuses  Classes, SysUtils;  //JclBase;// Character constants and setsconst// Misc. often used character definitions  AnsiNull           = AnsiChar(#0);  AnsiSoh            = AnsiChar(#1);  AnsiStx            = AnsiChar(#2);  AnsiEtx            = AnsiChar(#3);  AnsiEot            = AnsiChar(#4);  AnsiEnq            = AnsiChar(#5);  AnsiAck            = AnsiChar(#6);  AnsiBell           = AnsiChar(#7);  AnsiBackspace      = AnsiChar(#8);  AnsiTab            = AnsiChar(#9);  AnsiLineFeed       = AnsiChar(#10);  AnsiVerticalTab    = AnsiChar(#11);  AnsiFormFeed       = AnsiChar(#12);  AnsiCarriageReturn = AnsiChar(#13);  AnsiCrLf           = AnsiString(#13#10);  AnsiSo             = AnsiChar(#14);  AnsiSi             = AnsiChar(#15);  AnsiDle            = AnsiChar(#16);  AnsiDc1            = AnsiChar(#17);  AnsiDc2            = AnsiChar(#18);  AnsiDc3            = AnsiChar(#19);  AnsiDc4            = AnsiChar(#20);  AnsiNak            = AnsiChar(#21);  AnsiSyn            = AnsiChar(#22);  AnsiEtb            = AnsiChar(#23);  AnsiCan            = AnsiChar(#24);  AnsiEm             = AnsiChar(#25);  AnsiEndOfFile      = AnsiChar(#26);  AnsiEscape         = AnsiChar(#27);  AnsiFs             = AnsiChar(#28);  AnsiGs             = AnsiChar(#29);  AnsiRs             = AnsiChar(#30);  AnsiUs             = AnsiChar(#31);  AnsiSpace          = AnsiChar(' ');  AnsiComma          = AnsiChar(',');  AnsiBackslash      = AnsiChar('\');  AnsiForwardSlash   = AnsiChar('/');  AnsiDoubleQuote = AnsiChar('"');  AnsiSingleQuote = AnsiChar('''');  {$IFDEF MSWINDOWS}  AnsiLineBreak      = AnsiCrLf;  {$ENDIF}// Misc. character sets  AnsiSigns          = ['-', '+'];  AnsiWhiteSpace     = [AnsiTab, AnsiLineFeed, AnsiVerticalTab, AnsiFormFeed,    AnsiCarriageReturn, AnsiSpace];  AnsiDecDigits      = ['0'..'9'];  AnsiOctDigits      = ['0'..'7'];  AnsiHexDigits      = ['0'..'9', 'A'..'F', 'a'..'f'];{$IFDEF MSWINDOWS}const  // CharType return values  C1_UPPER  = $0001; // Uppercase  C1_LOWER  = $0002; // Lowercase  C1_DIGIT  = $0004; // Decimal digits  C1_SPACE  = $0008; // Space characters  C1_PUNCT  = $0010; // Punctuation  C1_CNTRL  = $0020; // Control characters  C1_BLANK  = $0040; // Blank characters  C1_XDIGIT = $0080; // Hexadecimal digits  C1_ALPHA  = $0100; // Any linguistic character: alphabetic, syllabary, or ideographic{$IFDEF SUPPORTS_EXTSYM}  {$EXTERNALSYM C1_UPPER}  {$EXTERNALSYM C1_LOWER}  {$EXTERNALSYM C1_DIGIT}  {$EXTERNALSYM C1_SPACE}  {$EXTERNALSYM C1_PUNCT}  {$EXTERNALSYM C1_CNTRL}  {$EXTERNALSYM C1_BLANK}  {$EXTERNALSYM C1_XDIGIT}  {$EXTERNALSYM C1_ALPHA}{$ENDIF}{$ENDIF}//--------------------------------------------------------------------------------------------------// String Test Routines//--------------------------------------------------------------------------------------------------function StrIsAlpha(const S: AnsiString): Boolean;function StrIsAlphaNum(const S: AnsiString): Boolean;function StrIsAlphaNumUnderscore(const S: AnsiString): Boolean;function StrContainsChars(const S: AnsiString; Chars: TSysCharSet; CheckAll: Boolean): Boolean;function StrIsDigit(const S: AnsiString): Boolean;function StrIsNumber(const S: AnsiString): Boolean;function StrIsSubset(const S: AnsiString; const ValidChars: TSysCharSet): Boolean;function StrSame(const S1, S2: AnsiString): Boolean;//--------------------------------------------------------------------------------------------------// String Transformation Routines//--------------------------------------------------------------------------------------------------function StrCenter(const S: AnsiString; L: Integer; C: AnsiChar  = ' '): AnsiString;function StrCharPosLower(const S: AnsiString; CharPos: Integer): AnsiString;function StrCharPosUpper(const S: AnsiString; CharPos: Integer): AnsiString;function StrDoubleQuote(const S: AnsiString): AnsiString;function StrEnsurePrefix(const Prefix, Text: AnsiString): AnsiString;function StrEnsureSuffix(const Suffix, Text: AnsiString): AnsiString;function StrEscapedToString(const S: AnsiString): AnsiString;function StrLower(const S: AnsiString): AnsiString;procedure StrLowerInPlace(var S: AnsiString);procedure StrLowerBuff(S: PAnsiChar);procedure StrMove(var Dest: AnsiString; const Source: AnsiString; const ToIndex,  FromIndex, Count: Integer);function StrPadLeft(const S: AnsiString; Len: Integer; C: AnsiChar = AnsiSpace ): AnsiString;function StrPadRight(const S: AnsiString; Len: Integer; C: AnsiChar = AnsiSpace ): AnsiString;function StrProper(const S: AnsiString): AnsiString;procedure StrProperBuff(S: PAnsiChar);function StrQuote(const S: AnsiString; C: AnsiChar): AnsiString;function StrRemoveChars(const S: AnsiString; const Chars: TSysCharSet): AnsiString;function StrKeepChars(const S: AnsiString; const Chars: TSysCharSet): AnsiString;procedure StrReplace(var S: AnsiString; const Search, Replace: AnsiString; Flags: TReplaceFlags = []);function StrReplaceChar(const S: AnsiString; const Source, Replace: Char): AnsiString;function StrReplaceChars(const S: AnsiString; const Chars: TSysCharSet; Replace: Char): AnsiString;function StrReplaceButChars(const S: AnsiString; const Chars: TSysCharSet; Replace: Char): AnsiString;function StrRepeat(const S: AnsiString; Count: Integer): AnsiString;function StrRepeatLength(const S: AnsiString; Const L: Integer): AnsiString;function StrReverse(const S: AnsiString): AnsiString;procedure StrReverseInPlace(var S: AnsiString);function StrSingleQuote(const S: AnsiString): AnsiString;function StrSmartCase(const S: AnsiString; Delimiters: TSysCharSet): AnsiString;function StrStringToEscaped(const S: AnsiString): AnsiString;function StrStripNonNumberChars(const S: AnsiString): AnsiString;function StrToHex(const Source: AnsiString): AnsiString;function StrTrimCharLeft(const S: AnsiString; C: AnsiChar): AnsiString;function StrTrimCharsLeft(const S: AnsiString; const Chars: TSysCharSet): AnsiString;function StrTrimCharRight(const S: AnsiString; C: AnsiChar): AnsiString;function StrTrimCharsRight(const S: AnsiString; const Chars: TSysCharSet): AnsiString;function StrTrimQuotes(const S: AnsiString): AnsiString;function StrUpper(const S: AnsiString): AnsiString;procedure StrUpperInPlace(var S: AnsiString);procedure StrUpperBuff(S: PAnsiChar);{$IFDEF WIN32}function StrOemToAnsi(const S: AnsiString): AnsiString;function StrAnsiToOem(const S: AnsiString): AnsiString;{$ENDIF WIN32}//--------------------------------------------------------------------------------------------------// String Management//--------------------------------------------------------------------------------------------------procedure StrAddRef(var S: AnsiString);function StrAllocSize(const S: AnsiString): Longint;procedure StrDecRef(var S: AnsiString);function StrLen(S: PChar): Integer;function StrLength(const S: AnsiString): Longint;function StrRefCount(const S: AnsiString): Longint;procedure StrResetLength(var S: AnsiString);//--------------------------------------------------------------------------------------------------// String Search and Replace Routines//--------------------------------------------------------------------------------------------------function StrCharCount(const S: AnsiString; C: AnsiChar): Integer;function StrCharsCount(const S: AnsiString; Chars: TSysCharSet): Integer;function StrStrCount(const S, SubS: AnsiString): Integer;function StrCompare(const S1, S2: AnsiString): Integer;function StrCompareRange(const S1, S2: AnsiString; const Index, Count: Integer): Integer;function StrFillChar(const C: AnsiChar; const Count: Integer): AnsiString;function StrFind(const Substr, S: AnsiString; const Index: Integer = 1): Integer;function StrHasPrefix(const S: AnsiString; const Prefixes: array of string): Boolean;function StrIndex(const S: AnsiString; const List: array of string): Integer;function StrILastPos(const SubStr, S: AnsiString): Integer;function StrIPos(const SubStr, S: AnsiString): Integer;function StrIsOneOf(const S: AnsiString; const List: array of AnsiString): Boolean;function StrLastPos(const SubStr, S: AnsiString): Integer;function StrMatch(const Substr, S: AnsiString; const Index: Integer = 1): Integer;function StrMatches(const Substr, S: AnsiString; const Index: Integer = 1): Boolean;function StrNIPos(const S, SubStr: AnsiString; N: Integer): Integer;function StrNPos(const S, SubStr: AnsiString; N: Integer): Integer;function StrPrefixIndex(const S: AnsiString; const Prefixes: array of string): Integer;function StrSearch(const Substr, S: AnsiString; const Index: Integer = 1): Integer;//--------------------------------------------------------------------------------------------------// String Extraction//--------------------------------------------------------------------------------------------------function StrAfter(const SubStr, S: AnsiString): AnsiString;function StrBefore(const SubStr, S: AnsiString): AnsiString;function StrBetween(const S: AnsiString; const Start, Stop: AnsiChar): AnsiString;function StrChopRight(const S: AnsiString; N: Integer): AnsiString;function StrLeft(const S: AnsiString; Count: Integer): AnsiString;function StrMid(const S: AnsiString; Start, Count: Integer): AnsiString;function StrRestOf(const S: AnsiString; N: Integer): AnsiString;function StrRight(const S: AnsiString; Count: Integer): AnsiString;//--------------------------------------------------------------------------------------------------// Character Test Routines//--------------------------------------------------------------------------------------------------function CharEqualNoCase(const C1, C2: AnsiChar): Boolean;function CharIsAlpha(const C: AnsiChar): Boolean;function CharIsAlphaNum(const C: AnsiChar): Boolean;function CharIsBlank(const C: AnsiChar): Boolean;function CharIsControl(const C: AnsiChar): Boolean;function CharIsDelete(const C: AnsiChar): Boolean;function CharIsDigit(const C: AnsiChar): Boolean;function CharIsLower(const C: AnsiChar): Boolean;function CharIsNumber(const C: AnsiChar): Boolean;function CharIsPrintable(const C: AnsiChar): Boolean;function CharIsPunctuation(const C: AnsiChar): Boolean;function CharIsReturn(const C: AnsiChar): Boolean;function CharIsSpace(const C: AnsiChar): Boolean;function CharIsUpper(const C: AnsiChar): Boolean;function CharIsWhiteSpace(const C: AnsiChar): Boolean;function CharType(const C: AnsiChar): Word;//--------------------------------------------------------------------------------------------------// Character Transformation Routines//--------------------------------------------------------------------------------------------------function CharHex(const C: AnsiChar): Byte;function CharLower(const C: AnsiChar): AnsiChar;function CharUpper(const C: AnsiChar): AnsiChar;function CharToggleCase(const C: AnsiChar): AnsiChar;//--------------------------------------------------------------------------------------------------// Character Search and Replace//--------------------------------------------------------------------------------------------------function CharPos(const S: AnsiString; const C: AnsiChar; const Index: Integer = 1): Integer;function CharIPos(const S: AnsiString; const C: AnsiChar; const Index: Integer = 1 ): Integer;function CharReplace(var S: AnsiString; const Search, Replace: AnsiChar): Integer;//--------------------------------------------------------------------------------------------------// PCharVector//--------------------------------------------------------------------------------------------------type  PCharVector = ^PChar;function StringsToPCharVector(var Dest: PCharVector; const Source: TStrings): PCharVector;function PCharVectorCount(const Source: PCharVector): Integer;procedure PCharVectorToStrings(const Dest: TStrings; const Source: PCharVector);procedure FreePCharVector(var Dest: PCharVector);//--------------------------------------------------------------------------------------------------// MultiSz Routines//--------------------------------------------------------------------------------------------------function StringsToMultiSz(var Dest: PChar; const Source: TStrings): PChar;procedure MultiSzToStrings(const Dest: TStrings; const Source: PChar);procedure FreeMultiSz(var Dest: PChar);//--------------------------------------------------------------------------------------------------// TStrings Manipulation//--------------------------------------------------------------------------------------------------procedure StrIToStrings(S, Sep: AnsiString; const List: TStrings; const AllowEmptyString: Boolean = True);procedure StrToStrings(S, Sep: AnsiString; const List: TStrings; const AllowEmptyString: Boolean = True);function StringsToStr(const List: TStrings; const Sep: AnsiString;const AllowEmptyString: Boolean = True): AnsiString;procedure TrimStrings(const List: TStrings; DeleteIfEmpty: Boolean = True );procedure TrimStringsRight(const List: TStrings; DeleteIfEmpty: Boolean = True);procedure TrimStringsLeft(const List: TStrings; DeleteIfEmpty: Boolean = True );function AddStringToStrings(const S: string; Strings: TStrings; const Unique: Boolean): Boolean;//--------------------------------------------------------------------------------------------------// Miscellaneous//--------------------------------------------------------------------------------------------------function BooleanToStr(B: Boolean): AnsiString;function FileToString(const FileName: AnsiString): AnsiString;procedure StringToFile(const FileName, Contents: AnsiString);function StrToken(var S: AnsiString; Separator: AnsiChar): AnsiString;procedure StrTokens(const S: AnsiString; const List: TStrings);procedure StrTokenToStrings(S: AnsiString; Separator: AnsiChar; const List: TStrings);function StrWord(var S: PAnsiChar; out Word: AnsiString): Boolean;function StrToIntSafe(const S: AnsiString): Integer;procedure StrNormIndex(const StrLen: integer; var Index: integer; var Count: integer); overload;{$IFNDEF DELPHI5_UP}//--------------------------------------------------------------------------------------------------// Backward compatibility//--------------------------------------------------------------------------------------------------function AnsiSameText(const S1, S2: AnsiString): Boolean;{$ENDIF DELPHI5_UP}//--------------------------------------------------------------------------------------------------// Exceptions//--------------------------------------------------------------------------------------------------implementationuses  {$IFDEF WIN32}  Windows;  {$ENDIF WIN32}  {JclLogic,  JclResources;}//==================================================================================================// Internal//==================================================================================================type  TAnsiStrRec = packed record    AllocSize: Longint;    RefCount: Longint;    Length: Longint;  end;const  AnsiStrRecSize  = SizeOf(TAnsiStrRec);     // size of the AnsiString header rec  AnsiCharCount   = Ord(High(AnsiChar)) + 1; // # of chars in one set  AnsiLoOffset    = AnsiCharCount * 0;       // offset to lower case chars  AnsiUpOffset    = AnsiCharCount * 1;       // offset to upper case chars  AnsiReOffset    = AnsiCharCount * 2;       // offset to reverse case chars  AnsiAlOffset    = 12;                      // offset to AllocSize in StrRec  AnsiRfOffset    = 8;                       // offset to RefCount in StrRec  AnsiLnOffset    = 4;                       // offset to Length in StrRec  AnsiCaseMapSize = AnsiCharCount * 3;       // # of chars is a tablevar  AnsiCaseMap: array [0..AnsiCaseMapSize - 1] of AnsiChar; // case mappings  AnsiCaseMapReady: Boolean = False;         // true if case map exists  AnsiCharTypes: array [AnsiChar] of Word;//--------------------------------------------------------------------------------------------------procedure LoadCharTypes;var  CurrChar: AnsiChar;  CurrType: Word;begin  {$IFDEF MSWINDOWS}  for CurrChar := Low(AnsiChar) to High(AnsiChar) do  begin    GetStringTypeExA(LOCALE_USER_DEFAULT, CT_CTYPE1, @CurrChar, SizeOf(AnsiChar), CurrType);    AnsiCharTypes[CurrChar] := CurrType;  end;  {$ENDIF}end;//--------------------------------------------------------------------------------------------------procedure LoadCaseMap;var  CurrChar, UpCaseChar, LoCaseChar, ReCaseChar: AnsiChar;begin  {$IFDEF MSWINDOWS}  if not AnsiCaseMapReady then  begin    for CurrChar := Low(AnsiChar) to High(AnsiChar) do    begin      LoCaseChar := CurrChar;      UpCaseChar := CurrChar;      Windows.CharLowerBuff(@LoCaseChar, 1);      Windows.CharUpperBuff(@UpCaseChar, 1);      if CharIsUpper(CurrChar) then        ReCaseChar := LoCaseChar      else        if CharIsLower(CurrChar) then          ReCaseChar := UpCaseChar        else          ReCaseChar := CurrChar;      AnsiCaseMap[Ord(CurrChar) + AnsiLoOffset] := LoCaseChar;      AnsiCaseMap[Ord(CurrChar) + AnsiUpOffset] := UpCaseChar;      AnsiCaseMap[Ord(CurrChar) + AnsiReOffset] := ReCaseChar;    end;    AnsiCaseMapReady := True;  end;  {$ENDIF MSWINDOWS}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
舔着乳尖日韩一区| 日本中文在线一区| 欧美一卡二卡在线观看| 成人午夜伦理影院| 久久成人综合网| 亚洲香肠在线观看| 国产精品久久久久久久久图文区| 91精品国产入口在线| aaa亚洲精品一二三区| 国产一区二区三区免费观看| 视频一区国产视频| 亚洲人成人一区二区在线观看| 欧美大肚乱孕交hd孕妇| 欧美性大战xxxxx久久久| jizzjizzjizz欧美| 国产精品白丝av| 免费在线观看成人| 亚洲成a人片在线不卡一二三区| 国产精品入口麻豆原神| 精品电影一区二区| 色偷偷88欧美精品久久久| 国产麻豆成人传媒免费观看| 日本91福利区| 亚洲h在线观看| 亚洲色欲色欲www| 国产精品私人自拍| 国产喂奶挤奶一区二区三区| 亚洲精品在线免费观看视频| 日韩一区二区在线看| 欧美精品18+| 91精品久久久久久久91蜜桃| 精品视频123区在线观看| 欧美性一级生活| 欧美性生交片4| 欧美三级日本三级少妇99| 欧美手机在线视频| 欧美精品乱码久久久久久| 555www色欧美视频| 欧美一级高清大全免费观看| 91精选在线观看| 欧美电影免费提供在线观看| 精品国一区二区三区| 久久尤物电影视频在线观看| 久久新电视剧免费观看| 久久精品在这里| 国产精品黄色在线观看| 亚洲视频免费观看| 亚洲国产毛片aaaaa无费看| 亚洲国产一区在线观看| 午夜精品福利一区二区蜜股av | 曰韩精品一区二区| 一区二区三区加勒比av| 亚洲成av人**亚洲成av**| 亚洲va在线va天堂| 蜜臀av性久久久久蜜臀aⅴ| 另类中文字幕网| 国产凹凸在线观看一区二区 | 欧美肥妇毛茸茸| 6080日韩午夜伦伦午夜伦| 精品国产一区二区三区四区四| 国产三级一区二区| 一区二区三区国产| 日韩高清一区二区| 国产精品 欧美精品| 91在线视频网址| 欧美视频一区二区三区| 精品乱人伦一区二区三区| 国产欧美视频在线观看| 亚洲精品综合在线| 久久精品99国产精品日本| www.亚洲精品| 91麻豆精品国产91久久久久 | 日本欧美韩国一区三区| 国产伦精一区二区三区| 色噜噜久久综合| 欧美成人精品高清在线播放| 中文字幕视频一区二区三区久| 亚洲成人av在线电影| 国产麻豆成人精品| 欧美在线免费视屏| 国产欧美综合在线| 天天综合色天天综合| 成人网在线播放| 91精品欧美久久久久久动漫| 欧美国产精品一区二区| 香港成人在线视频| 成人性视频网站| 91精品国产色综合久久| 国产精品国产三级国产aⅴ中文| 日日夜夜免费精品视频| 成人黄色777网| 欧美电影免费观看高清完整版| 亚洲视频电影在线| 国产精品亚洲一区二区三区在线| 91久久国产最好的精华液| 久久精品一区二区三区av| 日韩精品三区四区| 色婷婷综合久久久中文字幕| 国产性天天综合网| 麻豆91在线播放免费| 欧美视频日韩视频在线观看| 国产精品女同一区二区三区| 极品瑜伽女神91| 337p亚洲精品色噜噜| 亚洲免费观看视频| 国产成人av一区二区三区在线| 欧美久久久久久久久| 亚洲免费视频成人| 成人激情动漫在线观看| 久久美女艺术照精彩视频福利播放 | 久久久久国产精品人| 美女精品一区二区| 7777女厕盗摄久久久| 亚洲一区二区精品视频| 一本到不卡免费一区二区| 欧美激情一区二区三区全黄| 国产一二精品视频| 久久久久久夜精品精品免费| 久久av老司机精品网站导航| 欧美日韩dvd在线观看| 一区二区三区精品久久久| 色婷婷综合久色| 一区二区三区在线观看网站| 91丨porny丨户外露出| 中文字幕不卡在线| 成人综合婷婷国产精品久久蜜臀| 精品福利一区二区三区 | 欧洲国内综合视频| 亚洲色图丝袜美腿| 色综合欧美在线视频区| 中文字幕一区日韩精品欧美| 成人97人人超碰人人99| 国产精品久99| 色域天天综合网| 亚洲综合无码一区二区| 欧美丝袜丝交足nylons图片| 亚洲国产美国国产综合一区二区| 亚洲欧美综合网| 亚洲美女在线国产| 91成人在线精品| 亚洲韩国一区二区三区| 欧美日韩二区三区| 美腿丝袜亚洲色图| 26uuu国产一区二区三区| 国产电影一区二区三区| 国产精品无圣光一区二区| 99久久精品免费看国产| 亚洲欧美色一区| 欧美日韩精品二区第二页| 男男成人高潮片免费网站| www日韩大片| 99精品视频中文字幕| 一区二区成人在线| 欧美一级日韩一级| 国产九色sp调教91| 亚洲视频在线一区观看| 欧美日韩一区国产| 美女脱光内衣内裤视频久久影院| 久久久噜噜噜久久人人看 | 欧美一级艳片视频免费观看| 久99久精品视频免费观看| 中文字幕巨乱亚洲| 欧美又粗又大又爽| 精品一区二区三区视频| 中国色在线观看另类| 欧美色综合影院| 精品在线一区二区| 亚洲欧美日韩人成在线播放| 在线成人免费视频| 国产成人免费视频精品含羞草妖精 | 91影院在线免费观看| 婷婷久久综合九色综合绿巨人| 精品国产sm最大网站| 91行情网站电视在线观看高清版| 日韩av高清在线观看| 亚洲欧洲另类国产综合| 337p亚洲精品色噜噜噜| av在线不卡免费看| 日韩电影在线免费看| 国产欧美日韩久久| 337p亚洲精品色噜噜| 99久久精品国产麻豆演员表| 免费观看一级欧美片| 亚洲欧美电影一区二区| 精品国产电影一区二区| 欧美亚洲国产一区二区三区va| 紧缚奴在线一区二区三区| 一区二区三区在线看| 国产三级精品三级| 欧美一区二区三区公司| 91丝袜国产在线播放| 国产精品一区二区在线观看网站| 亚洲妇女屁股眼交7| 国产精品另类一区| 精品国产一二三| 欧美撒尿777hd撒尿| 97精品国产露脸对白| 国产乱对白刺激视频不卡| 三级成人在线视频| 亚洲精品v日韩精品|