From 4d9a6aa4d630fdaf2a1a24bea66a2426cb27bf1b Mon Sep 17 00:00:00 2001 From: Eugene Date: Wed, 29 Jul 2026 21:09:11 +0300 Subject: [PATCH] up regex --- apps/vbox/client/androidApp/build.gradle.kts | 4 ++-- .../shadowsparky/vbox/shared/data/chat/MovieTextParser.kt | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/vbox/client/androidApp/build.gradle.kts b/apps/vbox/client/androidApp/build.gradle.kts index 03f741c..175f6ad 100644 --- a/apps/vbox/client/androidApp/build.gradle.kts +++ b/apps/vbox/client/androidApp/build.gradle.kts @@ -12,8 +12,8 @@ android { applicationId = namespace minSdk = libs.versions.proj.min.get().toInt() targetSdk = libs.versions.proj.target.get().toInt() - versionCode = 46 - versionName = "1.24.2" + versionCode = 47 + versionName = "1.24.3" } } diff --git a/apps/vbox/client/shared/src/commonMain/kotlin/ru/shadowsparky/vbox/shared/data/chat/MovieTextParser.kt b/apps/vbox/client/shared/src/commonMain/kotlin/ru/shadowsparky/vbox/shared/data/chat/MovieTextParser.kt index e7fd44d..46baf8f 100644 --- a/apps/vbox/client/shared/src/commonMain/kotlin/ru/shadowsparky/vbox/shared/data/chat/MovieTextParser.kt +++ b/apps/vbox/client/shared/src/commonMain/kotlin/ru/shadowsparky/vbox/shared/data/chat/MovieTextParser.kt @@ -6,7 +6,7 @@ import ru.shadowsparky.chat.domain.TextToken @Factory class MovieTextParser : ChatTextParser { - private val regex = Regex("\\*\\*(.*?)\\*\\*") + private val regex = Regex("«(.*?)»|\"(.*?)\"") override fun parse(content: String): List { val tokens = mutableListOf() @@ -15,10 +15,12 @@ class MovieTextParser : ChatTextParser { if (matchResult.range.first > lastIndex) { tokens.add(TextToken.Plain(content.substring(lastIndex, matchResult.range.first))) } - val movieTitle = matchResult.groupValues[1] + val movieTitle = matchResult.groupValues[1].takeIf { it.isNotEmpty() } + ?: matchResult.groupValues[2] tokens.add(TextToken.Link(text = movieTitle)) lastIndex = matchResult.range.last + 1 } + if (lastIndex < content.length) { tokens.add(TextToken.Plain(content.substring(lastIndex))) }