diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensions.kt b/app/src/main/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensions.kt index 45df2e74f7..0085e3cdbf 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensions.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensions.kt @@ -45,14 +45,14 @@ fun String?.orZeroWidthSpace(): String = this.orNullIfBlank() ?: ZERO_WIDTH_CHAR * * This validates that the email is valid by asserting that: * * The string starts with a string of characters including periods, underscores, percent symbols, - * plus's, minus's, and alphanumeric characters. + * plus's, minus's, forward slash's, and alphanumeric characters. * * Followed by an '@' symbol. * * Followed by a string of characters including periods, minus's, and alphanumeric characters. * * Followed by a period. * * Followed by at least 2 more alphanumeric characters. */ fun String.isValidEmail(): Boolean = - this.matches(regex = "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$".toRegex()) + this.matches(regex = "^[A-Za-z0-9._%+-/]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$".toRegex()) /** * Returns `true` if the given [String] is a non-blank, valid URI and `false` otherwise. diff --git a/app/src/test/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensionsTest.kt b/app/src/test/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensionsTest.kt index 000fc0aaa3..2b6d428f8a 100644 --- a/app/src/test/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensionsTest.kt +++ b/app/src/test/java/com/x8bit/bitwarden/ui/platform/base/util/StringExtensionsTest.kt @@ -26,6 +26,8 @@ class StringExtensionsTest { "test@test.test.com" to true, "test.test@test.com" to true, "test.test@test.test.com" to true, + "test/test@test.test.com" to true, + "test.test@test/test.com" to false, ) invalidEmails.forEach { assertEquals(it.first.isValidEmail(), it.second)