✅カッコが文中にある作品が未購入扱いになる
ページを作成している作品が未購入扱いになる
検索クエリを調べると
刑部姫コスプレイヤーのフリをした刑部姫が何故か俺のサークルでコスプレ売り子している話
ページを作るときには
刑部姫コスプレイヤーのフリをした刑部姫(本人)が何故か俺のサークルでコスプレ売り子している話
検索クエリで (本人)
が消えている
Scrapboxの検索APIの仕様が変わっているのかも?

原因
「娘の友だち (1) (コミックスDAYSコミックス)」を「娘の友だち」で検索できるように括弧を削除しているのが問題
対応
こうする
数字のカッコは最初に外す
(7)
とか関数が書いてある
.replace(/\((\d+)\)/g, " $1 ")
行頭のカッコはラベルとみなして消す
(最新刊)
(セール)
みたいなものは消す
.replace(/^\(.*?\)/, "")
これが起きたらやめる
(かっこから始まるようなタイトル)
があったらこれをやめて「最新刊」とか「セール」をブラックリスト形式にする
文中のカッコは外さない
どこまでが文中か探せばいいのかわからない
末尾のカッコはラベルとみなして消す
.replace(/\(([^)]*)\)$/, "")
これはダメだった
.replace(/\(([^)]*)\)[^(]*$/, "")
js// 末尾にカッコがあれば期待通り動くが
// 途中にカッコがあって末尾にない場合に、こうなってしまう
"刑部姫コスプレイヤーのフリをした刑部姫(本人)が何故か俺のサークルでコスプレ売り子している話".replace(/\(([^)]*)\)[^(]*$/, "")
'刑部姫コスプレイヤーのフリをした刑部姫'
こうなる
js"(最新刊)刑部姫コスプレイヤーのフリをした刑部姫(本人)が何故か俺のサークルでコスプレ売り子している話 (1) (レーベル)".replace(/\((\d+)\)/g, " $1 ").replace(/^\(.*?\)/, "").replace(/\(([^)]*)\)$/, "")
刑部姫コスプレイヤーのフリをした刑部姫(本人)が何故か俺のサークルでコスプレ売り子している話 1
"刑部姫コスプレイヤーのフリをした刑部姫(本人)が何故か俺のサークルでコスプレ売り子している話".replace(/\((\d+)\)/g, " $1 ").replace(/^\(.*?\)/, "").replace(/\(([^)]*)\)$/, "")
刑部姫コスプレイヤーのフリをした刑部姫(本人)が何故か俺のサークルでコスプレ売り子している話
これを保証するテストを追加した
よくない対応
かっこがあったら、カッコが出る前までで検索する
「(最新刊) タイトル」のように先頭にカッコがあるパターンがある
まだこの形式に遭遇したことはない