WP Rewrite for a custom variable

You have to use this:

add_rewrite_rule(
    'resources/audience/([^/]+)/?$',
    'index.php?pagename=resources&audience=$matches[1]',
    'top' );

in your init hook.

Then you should add your own query variable:

function add_my_var($public_query_vars) {
    $public_query_vars[] = 'audience';
    return $public_query_vars;
}
add_filter('query_vars', 'add_my_var');

Then flush rewrite rules (go to permalink settings and push “save” button).

After visiting url: site.com/resources/audience/teachers/ your recources page should be shown. You can get value of audience variable with get_query_var() function.