diff --git a/services/modules/replace_speaker/replaceSpeaker.js b/services/modules/replace_speaker/replaceSpeaker.js index bcc36f8..6f21cdb 100644 --- a/services/modules/replace_speaker/replaceSpeaker.js +++ b/services/modules/replace_speaker/replaceSpeaker.js @@ -52,8 +52,16 @@ const module_exports = { // Extract name if value is an object const displayName = typeof value === 'string' ? value : value.name; - // Replace speaker placeholder with display name - const regex = new RegExp(`\\b${placeholder}\\b`, 'g'); + // Normalize placeholder for matching (remove case sensitivity) + const normalizedPlaceholder = placeholder.toLowerCase(); + + // Replace all variations: speakerA, SpeakerA, SPEAKERA, speaker_a, Speaker A, etc. + // Matches with optional spaces, underscores, and parentheses + const regex = new RegExp( + `\\b[Ss]peaker\\s*[_-]?\\s*${placeholder.charAt(placeholder.length - 1)}\\b|\\b${placeholder}\\b`, + 'gi' + ); + outputContent = outputContent.replace(regex, displayName); });