     
     open func episodeDetail(_ htmlString : String, episode : Episode) -> Episode{
         let html : [String] = StringUtility.split(htmlString, separatedBy: "\n")
-        let startTagChs = "var chs="
-        let endTagChs = ";var ti="
-        let startTagTi = "var ti="
-        let endTagTi = ";var cs="
-        let startTagCs = "var cs='"
-        let endTagCs = "';for(var"
+        
         
         for txt in html {
-            let chs = StringUtility.substring(txt, startTagChs, endTagChs)
-            let ti = StringUtility.substring(txt, startTagTi, endTagTi)
-            let cs = StringUtility.substring(txt, startTagCs, endTagCs)
+            let chs = StringUtility.substring(txt, mStartTagChs, mEndTagChs)
+            let ti = StringUtility.substring(txt, mStartTagTi, mEndTagTi)
+            let cs = StringUtility.substring(txt, mStartTagCs, mEndTagCs)
             
             if(chs != nil){
                 episode.setChs(Int(chs!)!)



open class Parser{
    
    public init() {
    }
    
    open func allComics(_ htmlString : String, _ config: Config) -> [Comic]{
        var html : String = htmlString
        
        let commicIdBegin = "showthumb("
        let commicIdEnd = ",this);"
        var comicIdBeginIndex :String.Index?;
        var comicIdEndIndex :Range<String.Index>?;
        var comicId : String = "";
        
        let commicNameBegin = "hidethumb();'>"
        let commicNameEnd = "</a></td>"
        var comicNameBeginIndex :String.Index?;
        var comicNameEndIndex :Range<String.Index>?;
        var comicName : String = "";

            }else{
                //解析漫畫簡介
                if(comic.getDescription() == nil){
                    findDetailTagRange = StringUtility.indexOf(source: txt, search: mFindDeaitlTag)
                    
                    if(findDetailTagRange != nil){
                        let lower = StringUtility.indexOfLower(source: txt, search: "</td>")
