diff --git a/src/parser/parser.ts b/src/parser/parser.ts index dbb172170dda1d0b4c777381edd02a79e804446e..6461b2756bed1dc54dbcb9c67947a8b294a42673 100644 --- a/src/parser/parser.ts +++ b/src/parser/parser.ts @@ -16,13 +16,13 @@ import { */ type Verifier<A> = [RegExp, A]; export const roomVerifiers: Verifier<LinkKind.Alias | LinkKind.RoomId>[] = [ - [/^#([^/:]+?):(.+)$/, LinkKind.Alias], - [/^!([^/:]+?):(.+)$/, LinkKind.RoomId], + [/^#([^:]*):(.+)$/, LinkKind.Alias], + [/^!([^:]*):(.+)$/, LinkKind.RoomId], ]; export const verifiers: Verifier<LinkKind>[] = [ - [/^[!#]([^/:]+?):(.+?)\/\$([^/:]+?)$/, LinkKind.Permalink], - [/^@([^/:]+?):(.+)$/, LinkKind.UserId], - [/^\+([^/:]+?):(.+)$/, LinkKind.GroupId], + [/^[!#]([^:]*):(.+)\/\$([^:]+):(.+)$/, LinkKind.Permalink], + [/^@([^:]+):(.+)$/, LinkKind.UserId], + [/^\+([^:]+):(.+)$/, LinkKind.GroupId], ...roomVerifiers, ];