From 0e7a8a7442983e56ed67ddddbcf29ab57977ffad Mon Sep 17 00:00:00 2001 From: MarvNC Date: Fri, 22 Dec 2023 23:44:07 -0800 Subject: [PATCH] Fix indexOf bracket instance --- src/readingParse.js | 11 ++++++----- src/test.js | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/readingParse.js b/src/readingParse.js index 0319fea..9fbd9d5 100644 --- a/src/readingParse.js +++ b/src/readingParse.js @@ -9,14 +9,15 @@ function getReadingFromDefinition(definition, term) { // Remove spaces from definition and term definition = definition.replace(/ /g, ''); term = term.replace(/ /g, ''); - const bracketRegex = /[((]([^))]*)/g; + const bracketRegex = /([((]([^))]*))/g; const bracketMatches = bracketRegex.exec(definition); - // @ts-ignore - if (bracketMatches?.length >= 1) { + + if (bracketMatches && bracketMatches.length >= 2) { // @ts-ignore - const bracketContent = bracketMatches[1]; + const outerBracketContent = bracketMatches[1]; + const bracketContent = bracketMatches[2]; // Check if the bracket is at the beginning of the definition or closely following the term - const bracketIndex = definition.indexOf(bracketContent); + const bracketIndex = definition.indexOf(outerBracketContent); const termIndex = definition.indexOf(term) ?? 0; const termEndIndex = termIndex + term.length; if (bracketIndex - termEndIndex > leewayAfterTerm) { diff --git a/src/test.js b/src/test.js index d3dc4c6..a8d01f2 100644 --- a/src/test.js +++ b/src/test.js @@ -62,7 +62,7 @@ const testCases = [ }, { line: ` "Hagenuk MT-2000は1994年に発売された携帯電話である。この端末はデンマークStøvringにあるHagenukの開発センターで設計・製造された。この端末は前身である1992年のHagenuk MT-900とともに (en) の機能を導入した最初期の携帯電話製品の一つである。また、MT-2000は従来の外付けアンテナではなく内蔵アンテナを組み込んだ世界初の製品でもある。さらに、Hagenuk MT-2000はテトリス系のゲームを組み込んだ世界初の携帯電話でもある。"@ja .`, - term: 'Hagenuk_MT-2000', + term: 'Hagenuk MT-2000', expectedReading: '', },