diff --git a/app/src/main/java/com/vitorpamplona/amethyst/service/CachedRichTextParser.kt b/app/src/main/java/com/vitorpamplona/amethyst/service/CachedRichTextParser.kt index 5b5e03dc2..c8bee42dd 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/service/CachedRichTextParser.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/service/CachedRichTextParser.kt @@ -23,6 +23,8 @@ import kotlinx.collections.immutable.toImmutableList import kotlinx.collections.immutable.toImmutableMap import kotlinx.collections.immutable.toImmutableSet import java.util.regex.Pattern +import java.net.URI +import java.net.URISyntaxException @Immutable data class RichTextViewerState( @@ -67,8 +69,15 @@ class RichTextParser() { null } else if (isNumber(it.originalUrl)) { null + } else if (it.originalUrl.contains("。")) { + null } else { - it.originalUrl + val pattern = "^(http|https)://([A-Z0-9][A-Z0-9_-]*(?:.[A-Z0-9][A-Z0-9_-]*)+):?(d+)?/?".toRegex(RegexOption.IGNORE_CASE) + if (pattern.matches(it.originalUrl)) { + it.originalUrl + } else { + null + } } }