MangaDex: Clean manga descriptions (#10674)
* MangaDex: Clean manga descriptions Closes #10610 * Incrememnt mangadex.extVersionCode * Remove bbcode cleanup utility Since bbcode has been replaced with markdown. So, this is no longer required * Don't forgot to unescape html characters bbcode might be gone but &hearts still need to be converted to ♥ * Update `cleanString` method description * Remove trailing newlines Using Trim takes cares of whitespace too * Move regex to companion object so that they dont get instantiated everytime * Revert "Incrememnt mangadex.extVersionCode" This reverts commit 73c89933cc36cb41fd6691641c75acf0b6f49c45. Will be added back in a separate minor PR
This commit is contained in:
		
							parent
							
								
									6d89ecf346
								
							
						
					
					
						commit
						81e98ae6ae
					
				| @ -61,21 +61,16 @@ class MangaDexHelper() { | ||||
|     fun getLatestChapterOffset(page: Int): String = (MDConstants.latestChapterLimit * (page - 1)).toString() | ||||
| 
 | ||||
|     /** | ||||
|      * Remove bbcode tags as well as parses any html characters in description or | ||||
|      * Remove markdown links as well as parse any html characters in description or | ||||
|      * chapter name to actual characters for example ♥ will show ♥ | ||||
|      */ | ||||
|     fun cleanString(string: String): String { | ||||
|         val bbRegex = | ||||
|             """\[(\w+)[^]]*](.*?)\[/\1]""".toRegex() | ||||
|         var intermediate = string | ||||
|             .replace("[list]", "") | ||||
|             .replace("[/list]", "") | ||||
|             .replace("[*]", "") | ||||
|         // Recursively remove nested bbcode | ||||
|         while (bbRegex.containsMatchIn(intermediate)) { | ||||
|             intermediate = intermediate.replace(bbRegex, "$2") | ||||
|         } | ||||
|         return Parser.unescapeEntities(intermediate, false) | ||||
|         val unescapedString = Parser.unescapeEntities(string, false) | ||||
| 
 | ||||
|         return unescapedString | ||||
|             .substringBefore("---") | ||||
|             .replace(markdownLinksRegex, "$1") | ||||
|             .trim() | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
| @ -112,6 +107,8 @@ class MangaDexHelper() { | ||||
|         val USE_CACHE = CacheControl.Builder() | ||||
|             .maxStale(Integer.MAX_VALUE, TimeUnit.SECONDS) | ||||
|             .build() | ||||
| 
 | ||||
|         val markdownLinksRegex = "\\[([^]]+)\\]\\(([^)]+)\\)".toRegex() | ||||
|     } | ||||
| 
 | ||||
|     // Check the token map to see if the md@home host is still valid | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 nicki
						nicki