The program I've used is called
3DS Audio Ripper, it's pretty simple. I did a quick search and didn't find a link, so I'm attaching the file for you here. A BCSar can contain several kinds of files, and sounds are typically CWAV.
You could also extract them with a hex editor - just search the BCSar file for a "CWAV" header and copy everything up until the next header.
As for injecting your own audio: It's possible, also using a hex editor, but there's a good chance that your custom CWAV will need to be exactly the same file size as the one you want to replace. That's because it seems that games/apps refer to sounds in the BCSar by their location, not by name. You'll also need a program to convert your sound files to CWAV, which can be extremely hard to find outside of Nintendo devkit software...