Skip to content

Commit df27363

Browse files
authored
fix: 특수문자 제거 시 분해된 한글이 제거되지 않도록 수정 (#757)
* fix: 자모 분해하기 전 특수문자 제거 * refactor: 자모 분해하기 전 특수문자 제거 대신 정규식 수정 * fix: like 검색 시 홑따옴표 제외
1 parent f51fdd1 commit df27363

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

backend/src/v1/books/books.service.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ export const searchInfo = async (
168168
const disassemble = query ? disassembleHangul(query) : '';
169169
const initials = query ? extractHangulInitials(query) : '';
170170
const fullTextSearch = removeSpecialCharacters(disassemble);
171-
const likeSearch = disassemble.replaceAll(' ', '%').replaceAll(' ', '%');
171+
const likeSearch = disassemble.replaceAll("'", '').replaceAll(' ', '%');
172172

173173
let matchScore: string;
174174
let searchCondition: string;

backend/src/v1/search-keywords/searchKeywords.service.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -164,15 +164,15 @@ export const createSearchKeywordLog = async (
164164

165165
export const getSearchAutocompletePreviewResult = async (keyword: string) => {
166166
const LIMIT_OF_SEARCH_KEYWORD_PREVIEW = 12;
167-
let keywordInitials = extractHangulInitials(keyword as string);
167+
let disassembledKeyword = extractHangulInitials(keyword as string);
168168
let isCho = true;
169169

170-
if (keyword !== keywordInitials) {
171-
keywordInitials = disassembleHangul(keyword as string);
170+
if (keyword !== disassembledKeyword) {
171+
disassembledKeyword = disassembleHangul(keyword as string);
172172
isCho = false;
173173
}
174-
const fullTextSearch = removeSpecialCharacters(keywordInitials);
175-
const likeSearch = keywordInitials.replaceAll(' ', '%').replaceAll(' ', '%');
174+
const fullTextSearch = removeSpecialCharacters(disassembledKeyword);
175+
const likeSearch = disassembledKeyword.replaceAll("'", '').replaceAll(' ', '%');
176176

177177
let queryResult: AutocompleteKeyword[] = [];
178178
let totalCount: number;

backend/src/v1/utils/processKeywords.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@ export const extractHangulInitials = (original: string | undefined) => {
1414
};
1515

1616
export const removeSpecialCharacters = (input: string) => {
17-
const regex = /[^a-zA-Z0-9-\s]/g;
17+
const regex = /[^a-zA-Z0-9---\s]/g;
1818
return input.replace(regex, '');
1919
};

0 commit comments

Comments
 (0)